我想使用正则表达式在我的示例中查找特定字符串,但是如果我第一次找到另一个字符串,我希望正则表达式失败。让我举个例子:
仅在我们不首次遇到find_me
时才匹配stop_here
。 (我不在乎样本中稍后会出现stop_here
。)
所以,这应该匹配:
blah blah find_me blah stop_here
但这不应该:
blah blah stop_here blah find_me
(我正在使用.NET正则表达式引擎)
答案 0 :(得分:8)
^(?:(?!stop_here).)*find_me
答案 1 :(得分:2)
不确定.NET正则表达式引擎,但我只是对find_me或stop_here进行正则表达式搜索,然后检查哪一个匹配。在perl:
if ($stuff =~ /(find_me|stop_here)/) {
if ($1 == "find_me") {
...
} elsif ($1 == "stop_here") {
...
}
}