public boolean hasAxis() {
        int end = nextXpathNodeSeperator();
        if (end == -1) {
            end = queue.length() - 1;
        }
        for (int i = pos; i < end - 1; i++) {
            if (queue.charAt(i) == ':' && queue.charAt(i + 1) == ':') {
                String axisStr = queue.substring(pos, i);
                TokenQueue axisTokenQueue = new TokenQueue(axisStr);
                // 轴允许字母,-,_
                String axisName = axisTokenQueue.consumeCssIdentifier();
                if (StringUtils.isEmpty(axisName)) {
                    return false;
                }
                axisTokenQueue.consumeWhitespace();
                if (axisTokenQueue.isEmpty()) {
                    return true;// 无参轴
                }
                if (axisTokenQueue.matches("(")) {
                    String functionParams = axisTokenQueue.chompBalanced('(', ')');
                    if (functionParams == null) {
                        return false;// 格式不合法
                    }
                    axisTokenQueue.consumeWhitespace();
                    // 含参轴
                    return axisTokenQueue.isEmpty();
                }
                return false;
            }
        }
        return false;
    }
public boolean hasAxis ( ) { int end = nextXpathNodeSeperator ( ) ; if ( end == - 1 ) { end = queue . length ( ) - 1 ; } for ( int i = pos ; i < end - 1 ; i ++ ) { if ( queue . charAt ( i ) == ':' && queue . charAt ( i + 1 ) == ':' ) { String axisStr = queue . substring ( pos , i ) ; TokenQueue axisTokenQueue = new TokenQueue ( axisStr ) ; String axisName = axisTokenQueue . consumeCssIdentifier ( ) ; if ( StringUtils . isEmpty ( axisName ) ) { return false ; } axisTokenQueue . consumeWhitespace ( ) ; if ( axisTokenQueue . isEmpty ( ) ) { return true ; } if ( axisTokenQueue . matches ( "(" ) ) { String functionParams = axisTokenQueue . chompBalanced ( '(' , ')' ) ; if ( functionParams == null ) { return false ; } axisTokenQueue . consumeWhitespace ( ) ; return axisTokenQueue . isEmpty ( ) ; } return false ; } } return false ; }
当前节点是否有轴 abc('param1','param2'):: 或者abc::

@return 是否是轴节点