2011-02-03 Perlで正規表現のパターンに変数を使う際の注意 Programming Perl 使い慣れていないPerlでハマったのでメモ。正規表現のパターンに変数を使ったとき、その変数の値が正規表現のメタ文字を含んでると正しく動かない。言われてみればその通りなんだけど、気づくのに30分近くかかった…。quotemetaを使って事前にエスケープすれば解決。 $value = quotemeta( 'foo(bar)' ) ; if ( $text =~ /$value/ ) { print "OK.\n" ; }