比如有一字串(xml),里面有包含一些<PassportName>...</PassportName>的组,我想把它从中选出来并打印要怎么写正则表达式?

解决方案 »

  1.   


    public static void main(String args[]){
    String xmlStr = "dsfsafds<PassportName>fdsfds</PassportName><PassportName>dfe</PassportName>dsfds";
    Pattern p = Pattern.compile("<PassportName>[^</PassportName>].*</PassportName>");
    Matcher m = p.matcher(xmlStr);
    if(m.find()){
    System.out.println(m.group());
    }
    }
      

  2.   


    String xmlStr = "dsfsafds<PassportName>fdsfds</PassportName><PassportName>dfe</PassportName>dsfds";
    Pattern p = Pattern
    .compile("<PassportName>.*?</PassportName>");
    Matcher m = p.matcher(xmlStr);
    while (m.find()) {
    System.out.println(m.group());
    }
      

  3.   


    public static void main(String args[]){
    String xmlStr = "dsfsafds<PassportName>fdsfds</PassportName>dfds<PassportName>dfe</PassportName>dsfds";
    Pattern p = Pattern.compile("<PassportName>\\w*</PassportName>");
    Matcher m = p.matcher(xmlStr);
    while(m.find()){
    System.out.println(m.group());
    }
    }