次のような文字列で Twitter スタイルのタグを検索する単純な正規表現があります。
$reg_exUrl = "/@([A-Za-z0-9_]{1,15})/";
これは、@ 記号の後の単語の一致に最適です。
やりたくないことの1つは、ピリオドに一致することです。
だから合ってるはず
「@フー」
しかし、一致するべきではありません
「@フー。」
次のように、ピリオドを禁止するように式を修正して追加しようとしました。
$reg_exUrl = "/@([A-Za-z0-9_]{1,15})[^\.]/";
これは、文字列の末尾にある場合に一致しないことを除いて、ほとんど機能します。例えば:
この「@foo more text here」に一致します
ただし、この「@foo」には一致しません
誰かが私が間違っているところを教えてもらえますか?
ありがとう