Non-capturing group reg-ex in Sublime Text not working
我正在尝试删除标签之间的所有挥之不去的空格。所以我尝试用正则表达式选择它们。
1 2 | <span> </span> ^^^^^^^^ |
我的正则表达式是
目前,这两个正则表达式似乎在做同样的事情:
使用非捕获组:
没有非捕获组:
我认为我对正则表达式的理解不够好,但我不这里有什么问题?
非捕获组不会捕获组中的子模式(您可以稍后参考),但是,非捕获组中已匹配的所有子模式不会从整个匹配结果中排除。 解决问题的方法是使用零宽度断言的环视。环视只是测试,不是最终结果的一部分。
对于空格:
1 | (?<=>) +(?=<) |
对于所有空白字符:
1 | (?<=>)\\s+(?=<) |
(另一种解决方案是使用
非捕获组的目的是让您可以与一组字符作为一个组进行交互,而不会使其成为您可以在参考中使用的子匹配。所以你是正确的