我正在尝试从 Java 字符串中删除任何 XML 标记。在我看来,如果它遵循以下一种或两种形式,那么它就是一个 XML 标记:
<*>*<*/*>
, 如<fizz>buzz< /fizz>
; 或者<*/*>
, 如< fizz />
我的正则表达式很简单:
String tagful = "Hello <fizz>buzz</fizz>Regexes!";
String tagless = tagful.replaceAll("<*>*<*/*>", "");
tagless = tagless.replaceAll("<*/*>", "");
System.err.println("TAGLESS:\n\t" + tagless);
当我运行它时,我得到Hello <fizzbuzz</fizzRegexes!
了输出,而(如果我的 XML 剥离代码是正确的),我应该得到Hello Regexes!
. 我会误入歧途吗?
请注意:我不想使用任何现有的库;我在这里寻找一个纯 Java 正则表达式解决方案。提前致谢!