我需要用空格替换XML格式字符串中的所有标记。例如,在替换后,<student x = 100>Nick Miles</student>
将成为 Nick Miles
,Nick Miles
周围有两个空格。
我尝试了str.replaceAll("<ref.*?>", " ")
和str.replaceAll(</ref>, " ")
。
适用于大多数情况。但是,如果>
后面没有ref
,则会删除文本中的内容。我知道是关于贪婪的资格赛,但我只是没有解决它。有人可以提出一个可能的解决方案吗?
答案 0 :(得分:1)
为什么要使用贪婪的量词?您想要完全相反:一旦遇到第一个.*
,正则表达式就会停止匹配>
。这就是 lazy 量词的用途。只需将+
替换为?
即可。