Ale*_*eur 6 regex capturing-group
很难正确地说出这个词,但是TL; DR。
我想在给定的文本句子中匹配(假设“树是绿色的”),如果任何空格加倍(或更多)。
例:
"In this text,
THE TREE IS GREEN should not match,
THE TREE IS GREEN should
and so should THE TREE IS GREEN
but double-spaced TEXT SHOULD NOT BE FLAGGED outside the pattern."
Run Code Online (Sandbox Code Playgroud)
我最初的方法是
/THE( {2,})TREE( {2,})IS( {2,})GREEN/
Run Code Online (Sandbox Code Playgroud)
但这仅在序列中所有空格均为双精度的情况下才匹配,因此我想使任何组触发完全匹配。我是走错了路吗,还是有办法做到这一点?
如果有选项,您可以使用负前瞻。
首先匹配您想要失败的句子,在您的情况下,它是“THE TREE IS GREEN”,然后给出想要捕获您想要的结果的最通用的情况。
(?!THE TREE IS GREEN)(THE[ ]+TREE[ ]+IS[ ]+GREEN)
Run Code Online (Sandbox Code Playgroud)
https://regex101.com/r/EYDU6g/2