aut*_*act 4 regex perl lookahead negative-lookahead regex-negation
我对正则表达式相当新,需要一些帮助.我需要在Perl中使用正则表达式过滤一些行.我将把正则表达式传递给另一个函数,所以它需要在一行中完成.
我想只选择包含"too long"但不包含的行"SKIPPING"
这是我的测试字符串:
跳过此债券到期以来太长
TKIPPING这个债券到期,因为太长时间
拍打着这个债券到期以来太长
你好这个期限太长,
这是太长
你好
正则表达式规则应与"太长"的以下内容匹配:
跳过这个债券,因为到期时间太长,因为成熟期过长,所以这个债券的成熟时间过长
你这个成熟期过长
这太久了
它应该跳过:
"你好那里",因为它不包含"太长时间"
"跳过这个债券,因为成熟期过长"因为它包含'跳过'
cha*_*aos 11
/^(?!SKIPPING).*too long/
Run Code Online (Sandbox Code Playgroud)
Pau*_*lin 10
就个人而言,我只是为了让它更清晰,我将它作为两个单独的正则表达式.
while (<FILE>)
{
next if /^SKIPPING/;
next if !/too long/;
... do stuff
}
Run Code Online (Sandbox Code Playgroud)