我的字符串中通常有 xml 标签。但现在我有一个包含一些 html 标记的标签。一个字符串可以包含,<hg>This is text</hg>
或<html><![CDATA[<table>this is table</table>]]</html>
。我只想用空字符串替换外部标签。因此,在第一种情况下,<hg></hg>
将被空字符串替换,而在第二种情况下,将被空字符串<html></html>
替换。我正在使用外部 api 并且只能为此使用正则表达式?我试过了
String retVal = original.replace("`<.*?>.*</.*>`",""); but it didn't work.
编辑:
我希望结果产生为<!CDATA[[<table>winter</table>]]> String original = "<html><![CDATA[[<table>winter</table>]]></html>" String retval = original.replaceAll("<([^>]*)>(?:[^<]|<!\[CDATA\[.*?]]>)*</\\1>", "");