- ^H: iPhone 4SとCDMA 2000について、今知っておいてほしいこと
- ^H: iPhone 4SとCDMA 2000について、今知っておいてほしいこと
PCREでは”先読み”というものが
使えるのでこのように書けますよ。
((?!ab).)+
文字列の否定についてはこれらの
ページが参考になると思います。
先読みが使える場合の文字列の否定(名前クリックで飛べます)
http://funcchan.blog16.fc2.com/blog-entry-19.html#strdeny
先読みが使えない場合の文字列の否定
http://funcchan.blog16.fc2.com/blog-entry-39.html
先読みについての解説
http://funcchan.blog16.fc2.com/blog-entry-36.html
PCREの話ではなかったらごめんなさい^^;
nobody@example.com
、すなわちaddr-spec
までで、From: Anonymous
、すなわちmailbox
を正規表現でマッチするのは不可能なのはもう10年以上前から知られている(Perl 5.6以降の拡張正規表現であれば可能だが、それだともう狭義の正規表現からは逸脱してしまう)。”誰だって間違いはおかすし、そして今や正規表現を間違えるというのは最も間違えることの多い部分でもあり、達人でもそこから逃れるすべがほとんどない以上、間違った正規表現を見つける都度「そうじゃない」と指摘し、そして指摘されたらすぐ直し、お互いにハッピーというのが本来の作法だと私は信じている。どの言語を使っていても、その点は変わらない。
でもね….これを見てくれ。
トップにくるのは、「正規表現:メールアドレスかどうか調べる - phpspot」なのである。そしてここで紹介されている正規表現、^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$
は。悪名高きda.me..@docomo.ne.jp
を引っ掛ける一方で、dankogai+regexp@gmail.com
を弾いてしまう。
これでは、
と言われても無理もなくなってしまうのではないか。
”