String original = "<container>>This< is a >test<</container>";
String newStr = original.replace(">", "_TMP_CHARACTER_G_").replace("<", "_TMP_CHARACTER_L_");
System.out.println(original + "\n" + newStr);
// Print <container>>This< is a >test<</container>
// and <container>_TMP_CHARACTER_G_This_TMP_CHARACTER_L_ is a _TMP_CHARACTER_G_test_TMP_CHARACTER_L_</container>
// [Do your parsing here]
String theTagYouWant = newStr;
String theConvertedTag = theTagYouWant.replace("_TMP_CHARACTER_G_", ">").replace("_TMP_CHARACTER_L_", "<");
System.out.println(theConvertedTag);
// Print the original String <container>>This< is a >test<</container>
2条答案
按热度按时间06odsfpq1#
我不使用pull解析器(
XMLEventReader
)很多,但我相信,与sax解析器一样,它可以将文本节点报告为Characters
事件,而不是作为单个事件,并且由应用程序来连接它们。解析器最有可能选择在实体边界处分割内容,以避免在扩展实体时大量复制字符数据。bzzcjhmw2#
你可以临时替换
>
以及<
用一个你知道的独特的标签来标记。然后,进行解析,并用>
以及<
在完成解析后再次使用标记,如下面的代码中所示。