regex - 使用 Notepad++ 匹配非空 xml 标记的正则表达式
问题描述
xml文件包含多个标签,有的有值有的为空,比如
<main>
<text></text> <text> </text> <text></text> <text>test str</text>
<text></text>
</main>
如您所见,只有一个非空文本标签,在 npp 中,如何使用正则表达式在 xml 中找到此类非空标签。我不希望表达式将标签与空格匹配。
所以在执行 find 之后它应该匹配<text>test str</text>
我试过<text>(\S+)</text>
了,但这不起作用。
解决方案
你可以使用这个正则表达式,它会查找一个<text>
标签,然后是一些空格,然后是一个非空格字符,使用负前瞻来断言我们不在结束标签处:
<text>\s*(?!</text>)\S.*?</text>