[PHP-users 30326] Re: 正規表現での文字クラスの動作

Yukio Kinoshita inahou @ gmail.com
2006年 9月 15日 (金) 15:49:41 JST


木下です。

> Perlでは動くっていうのがわかりませんけど、
> 「beginで始まって、途中にbeginを含まないで、endで終わるもの」
>
> '/(begin([^begin]*)end)/'

これですと、b,e,g,i,n 以外になるようです。
で、以下のようにしたら、ばっちりでした。
'/(begin.*?end)/'
*の後ろに?を付けると、なるべく少なくマッチしてくれます。
「?」の使い方をすぐに忘れてしまいます。

PerlとPHPで文字クラスの動作が違うじゃんと思ってたら勘違いでした。
お騒がせしました。


PHP-users メーリングリストの案内