我有一个多次具有此模式的日志文件:
Toggle('AFDACAAAAAIAAAA')" class="Failure">ABC</a>
我有这个代码行来获取具有此模式的整行 但我只对ABC字符串感兴趣(可能是任何其他字符串)
print "$line" if $line =~ /Toggle\('[A-Z]*'\)" class="Failure">.*<\/a>/g;
我可以用正则表达式吗?
答案 0 :(得分:2)
如果您不想使用捕获组,可以使用前瞻和\K
锚点:
print $& if $line =~ /Toggle\('[A-Z]*'\)" class="Failure">\K.*(?=<\/a>)/;
\K
基本上会抛弃之前匹配的所有内容 - 但它仍然需要匹配。
答案 1 :(得分:1)
捕捉你想要的位。它将在$1
。 (哦,你不需要/g
。)
print $1 if $line =~ /Toggle\('[A-Z]*'\)" class="Failure">(.*)<\/a>/;