我试图在perl中使用qr函数,也想做Case不敏感的正则表达式匹配。以下是我想要做的事情:
my $pattern = qr(Buy Qty\[([0-9]+\.?[0-9]*)\]);
my $logPattern = "BUY Qty[200000] On merchant site";
if($logPattern =~ /$pattern/i){
print "MatchFound, Qty is ==> $1";
else {
print "Match Not found";
}
然而,当我运行它时,它会给我"匹配未找到"因为它没有使这个正则表达式匹配不区分大小写。但是,如果我删除qr代码并使用相同的模式,它会给我正确的答案。
请让我知道我在这里缺少的东西。
答案 0 :(得分:1)
您必须使用/i
开关
my $pattern = qr(Buy Qty\[([0-9]+\.?[0-9]*)\])i;