RE2 / Perl RegEx,选择没有任何多个单词的所有行

问题描述 投票:1回答:1

我对RE2的负面前瞻有困难。使用正常的正则表达式我会做这样的事情:

^(?!text|someText|.*cont).*

排除以“text”,“someText”开头并包含“cont”的行。不幸的是RE2没有负向前瞻。

我们怎么解决这个问题?

regex regex-negation re2
1个回答
0
投票

您可以通过使用正匹配来处理负前瞻条件,然后期望否定它。例如:

$input = "text is good";
if ($input !~ m/^(text|someText).*$/ && $input !~ m/^.*cont.*$/) {
    print "MATCH";
}
else {
    print "NO MATCH";
}
© www.soinside.com 2019 - 2024. All rights reserved.