日期:2014-05-18  浏览次数:20832 次

正则匹配标签内内容???急
我想建立一个类,可以匹配两个 <> 标签内的内容,并返回一个字符串。

例如 " <Msg> jlkjsdafjsadljf </Msg> ",得到jlkjsdafjsadljf。
多谢诸位大哥,小弟是新手分不多请见谅


我建立的类是
import   java.util.*;

public   class   matchStr   {
public   static   void   main(String[]   args)   {

String   inputStr   =   " <MsgIDObject> jlkjsdafjsadljf </MsgIDobject> ";
                  String   str   =   " ";
java.util.regex.Pattern   pat   =   java.util.regex.Pattern.compile(str);
java.util.regex.Matcher   mat   =   pat.matcher(inputStr);
StringBuffer   msgID   =   new   StringBuffer();
if(mat.find())
{
msgID.append(mat.group().toString());
}

}

}


------解决方案--------------------
public class MatchStr {

public static void main(String[] args) {

String inputStr = " <msg> jlkjsdafjsadljf </msg> ";
String str = " <msg> (.+) </msg> ";
java.util.regex.Pattern pat = java.util.regex.Pattern.compile(str);
java.util.regex.Matcher mat = pat.matcher(inputStr);
StringBuffer msgID = new StringBuffer();
if (mat.find())
{
msgID.append(mat.group(1).toString());
System.out.println( "msgID "+msgID);
}

}

}