⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 analysisxpath.java

📁 使用模式映射方法
💻 JAVA
字号:
/*
 * AnalysisXPath.java
 *
 * Created on 2007年5月11日, 上午12:33
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package XRSystem.Process;

/**
 *
 * @author 王刚
 */

import java.lang.*;
import java.util.*;
import javax.swing.*;

import XRSystem.Util.XPathNode;

public class AnalysisXPath {
    
    private String XPath;
    private ArrayList<String> SplitNode =new ArrayList<String>();
    private ArrayList<XPathNode> NodeList = new ArrayList<XPathNode>();
    
    /** Creates a new instance of AnalysisXPath */
    public AnalysisXPath(String XPath) {
        this.XPath=XPath;
    }   
   
   
    public ArrayList<XPathNode> SplitXPath() {
        
        String InputXPath,Temp;
        InputXPath = XPath;//InitXPath();
        int SplitFlag;
        String StepName;
        
        String[] StepArray = InputXPath.split("/");
        int TIndex=0;
        int[] SplitIndex = new int[StepArray.length+1];
        for(int x=0;x<InputXPath.length();x++) {
            if (InputXPath.charAt(x)=='/')
                SplitIndex[TIndex++]=x;
        }
        
        for(int y=0;y<SplitIndex.length;) {
            int start=SplitIndex[y];
            int end=SplitIndex[y+1];
            int length =InputXPath.length();
            if(start==length-1) {
                //System.out.println("Error");
                break;
            } else {
                Temp=InputXPath.substring(start,end);
                if (Temp.equals("/")) {
                    start=SplitIndex[y+1]+1;
                    end=SplitIndex[y+2];
                    SplitFlag=1;
                    StepName=InputXPath.substring(start,end);
                    NodeList.add(new XPathNode(SplitFlag,StepName));
                    y+=1;
                } else {
                    SplitFlag=0;
                    start=SplitIndex[y]+1;
                    end=SplitIndex[y+1];
                    StepName=InputXPath.substring(start,end);
                    NodeList.add(new XPathNode(SplitFlag,StepName));
                }
                y++;
            }
        }
        
        
       return NodeList;
        /*
        for(int i=0;i<NodeList.size();i++) {
            int m=NodeList.get(i).GetSplitType();
            String k=NodeList.get(i).GetStepName();
            System.out.println(m+"  "+k);
            //System.out.println(k);
        }*/
    }
    
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -