【发布时间】:2019-05-01 11:46:26
【问题描述】:
我的 xml 字符串是:
String neMsg= "<root>"
+" <CONTENT>"
+" <![CDATA[00000:<ResponseClass Name=\"Response\"><ITEM>HAHA</ITEM></ResponseClass>]]>"
+" </CONTENT>"
+"</root>";
我已经尝试使用四种方式编写代码,但仍然无法获取内容。我该如何解决这个问题?
//java.util.regex.Pattern pP0=java.util.regex.Pattern.compile("<!\\[CDATA\\[00000:(\\s|\\S)*?\\]\\]>");
// java.util.regex.Pattern pP0=java.util.regex.Pattern.compile("<!\\[CDATA\\[00000:(.*)\\]\\]>");
// java.util.regex.Pattern pP0=java.util.regex.Pattern.compile("<CONTENT>(.*)<!\\[CDATA\\[(.*)\\]\\]>(.*)</CONTENT>");
Pattern pP0 = Pattern.compile(".*<!\\[CDATA\\[00000:(.*)\\]\\]>.*");
java.util.regex.Matcher mP0= pP0.matcher(neMsg);
System.out.println(mP0.group(1));
【问题讨论】:
-
不要使用正则表达式来解析 XML(或 HTML 或类似的)!
标签: java regex regex-group