Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 如何将案例排除在正则表达式之外?_Regex - Fatal编程技术网

Regex 如何将案例排除在正则表达式之外?

Regex 如何将案例排除在正则表达式之外?,regex,Regex,假设我有以下文本: Lorem Ipsum Lorem Ipsum Dolor Lorem Dolor Ipsum Sit Amet 我想得到所有的Ipsum的,但不是从Dolor开始的 要匹配此条件,正确的正则表达式应该是什么?负查找就是您要查找的: (?<!Dolor )Ipsum (? 我可以建议以下正则表达式模式,它将匹配Ipsum,而不是紧跟在Dolor之前: (?:^\s*|\b(?!Dolor)\S+\s+)Ipsum 如果Ispum不是行中的第一个单词,则它也可能与前

假设我有以下文本:

Lorem Ipsum
Lorem Ipsum Dolor
Lorem Dolor Ipsum Sit Amet
我想得到所有的
Ipsum的
,但不是从
Dolor开始的


要匹配此条件,正确的正则表达式应该是什么?

负查找就是您要查找的:

(?<!Dolor )Ipsum
(?

我可以建议以下正则表达式模式,它将匹配
Ipsum
,而不是紧跟在
Dolor
之前:

(?:^\s*|\b(?!Dolor)\S+\s+)Ipsum
如果
Ispum
不是行中的第一个单词,则它也可能与前面的单词(而不是
Dolor
)匹配。希望这足以让您在IntelliJ搜索中使用

我建议不要在这里使用负lookback,因为要覆盖所有情况,您可能需要一个可变宽度的lookback,这可能不受支持,而且可能效率低下


是否保证存在“Lorem”?如果
Dolor
之后可能有超过空格的地方会发生什么?那么这不是一个合适的句子,如果是这样的话,我们需要OP的澄清。不,这只是一个空格。我正在使用IntelliJ find工具和regex。