最短一致、最小一致をさせようとしたとき

補足1: 「最短一致は使わない」について
基本的に最短一致は使うな、という結論にしてしまっているのですが、これは説明を端折っている面が大きいです。私の考えでは、正規表現初心者の頃は特にそうなのですが、「マッチングが最長一致であるために自分の意図通りのマッチングができなかった!最短一致こそ自分の求めていたものだ!」と思い込んでしまうことがあるような気がします。ところが、実際には最長一致のせいではなく、繰り返しを指示している表現が緩すぎる(例えば、本当は[^”]*と書くべきところを.*と書いてしまう、など)場合が殆どなのではないでしょうか。問題自体への理解不足を間違った方法で解決した気になったとしたら、潜在的なバグの原因になりかねません。最短一致を使うな、と呼びかける意図はそういった点です。正規表現エキスパートの人がわかっていて使う分には文句はありません。
以上、必死の言い訳でした。

http://openlab.dino.co.jp/2008/02/01/124015159.html
eregはposixっぽい。
http://www.rexv.org/

コメントを残す