■
- パスワードの定期変更という“不自然なルール”(1/4) − @IT
- CCCが上場廃止を選んだ理由を考えてみた。 - BEST BEFORE
- 今の日本だからこそ35年の住宅ローンを背負う本当の理由 - Future Insight
- 好きな人に“告白”する一番の方法は?永六輔さんの名回答に感動の声 - はてなブックマークニュース
- キーボードのショートカットにそのキーが割り当てられた理由について - 人力検索はてな
- [Linux]RPMコマンドでARCHを表示する - shibainu55日記
- 「Google Chrome 9」安定版、3D描画技術「WebGL」をサポート -INTERNET Watch
- [bash]bash_completionのバージョンアップ - みちしるべ
- Perlで正規表現のパターンに変数を使う際の注意 - 反応点灯..ほんとだ!
正規表現のパターンに変数を使ったとき、その変数の値が正規表現のメタ文字を含んでると正しく動かない。言われてみればその通りなんだけど、気づくのに30分近くかかった…。
quotemetaを使って事前にエスケープすれば解決。
$text = "foo(bar)"; print "no quote\n"; $value = 'foo(bar)' ; if ( $text =~ /$value/ ) { print "OK.\n" ; } print "quote\n"; $value = quotemeta( 'foo(bar)' ) ; if ( $text =~ /$value/ ) { print "OK.\n" ; }