用一个正则表示式表达出所有全匹配搜索到210,但是,又不包括有peer的行里的210
文本内容: peeripaddress=10.20.227.210
: peer2fsafd=210
(92): Scheduler2fsafd2=210666666
address.210
213ddress=10.20.227.sdfsdf210dsd
213address=10.20.227.vcxv210112
address=10.20.227.210
address=10.20.227.210
我试了用(?!.*peer)^.*210 匹配到的是下面的,我的要求是全匹配到210,不包括前面的address,address=10.20.227等 ,也就是说只有第4行和最后两行的210
(92): Scheduler2fsafd2=210
address.210
213ddress=10.20.227.sdfsdf210
213address=10.20.227.vcxv210
address=10.20.227.210
address=10.20.227.210
不知是你语文没学好,还是我语文没学好,我理解不了你的意思。 不匹配的部分可以用非捕获括号,或者不捕获,没必要用前瞻,因为前瞻语句有长度限制。
(?:.*peer)(^.*?210) 回复 3# 104359176
不行的,匹配不到
回复 2# hztj2005
简单说就是搜索210,排除非全字匹配的,同时行里有PEER里的,用正则表达式来表达 我找到了,用(?<!peer.*)210\b,但是在UEDIT中选择了正则表达式匹配不上,可能是UEDIT不支持正则表示式中的负向零宽断言 试下,
perl -ne 'print if(!/peer.*?=.*?210/)' f
页:
[1]