[Codeigniter-users] CI_Form_validation.php のメールアドレス検証の正規表現

Back to archive index

Toshihiro Karakane karak****@karak*****
2011年 3月 2日 (水) 18:40:57 JST


はじめまして。

唐金と申します。

CodeIgniterを利用しているのですが、メールアドレスの正規表現が正しくないのではないか
と思うのですが、この問題について事情をご存じの方はいらっしゃいませんか?

具体的には、CI_Form_validationの中のメールアドレスの正規表現は次の用になっています。

   "/^([a-z0-9\+_\-]+)(\.[a-z0-9\+_\-]+)*@([a-z0-9\-]+\.)+[a-z]{2,6}$/ix"

一方で、メールアドレスに利用可能な文字は、

   - 半角英数字(大文字小文字)
   - ! # $ % & ' * + - / = ? ^ _ ` { | } ~
   - .(先頭と末尾以外で使用可能。2個以上連続してはならない)
   (→ 参照先: http://ja.wikipedia.org/wiki/メールアドレス 関連するRFC文書を参照しても同様)

となっています。

前述の正規表現では抜け落ちる記号が結構あり、アンダースコアなど本当に実際に利用されそうな文字
では検証に失敗してしまいます。

この問題は比較的容易に指摘されそうだと思ったので公式サイトのバグトラッカー、フォーラムを
参照したのですが、それらしき記述は見つかりませんでした。

これって不具合に該当すると思うのですが、どうなんでしょうか?

# ところで、バグをレポートする場所ってbitbucketのトラッカーなのでしょうか? フォーラムなのでしょうか?
# ご存知のかたいらっしゃれば教えていただければと思います。

どうぞよろしくお願いいたします。

--
唐金 利宏
karak****@karra*****




Codeigniter-users メーリングリストの案内
Back to archive index