C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[3]: 正規表現でメールアドレスを調べる


(過去ログ 35 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■17782 / inTopicNo.1)  正規表現でメールアドレスを調べる
  
□投稿者/ まぐねしうむ (27回)-(2008/05/01(Thu) 16:34:56)

分類:[C#] 

いつもお世話になっております。

正規表現を使用して入力されたTxtBoxの情報が
メールアドレスとして正しいか確認したいと考えております。

10文字程度のCHKでしたら問題無く出来るのですが桁数が大きくなると
何故か、プログラムがBusyになってしまいます。

何方か解決方法を教えて頂けないでしょうか?

        private void button1_Click(object sender, EventArgs e)
        {
            Regex regex = new Regex(@"^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$");

            if (!regex.IsMatch(textBox1.Text))
            {

                MessageBox.Show("err");
            }
            else
            {
                MessageBox.Show("ok");
            }

        }
以上よろしくお願いします。

引用返信 編集キー/
■17787 / inTopicNo.2)  Re[1]: 正規表現でメールアドレスを調べる
□投稿者/ 魔界の仮面弁士 (708回)-(2008/05/01(Thu) 17:31:52)
No17782 (まぐねしうむ さん) に返信
> 正規表現を使用して入力されたTxtBoxの情報が
> メールアドレスとして正しいか確認したいと考えております。

というと、これかな…。C# では無いですけれども。
http://www.tt.rim.or.jp/~canada/comp/cgi/tech/mailaddrmatch/


> 10文字程度のCHKでしたら問題無く出来るのですが桁数が大きくなると
> 何故か、プログラムがBusyになってしまいます。

それについては、このあたりとか。
http://bbs.wankuma.com/index.cgi?mode=al2&namber=14328&KLOG=30
引用返信 編集キー/
■17788 / inTopicNo.3)  Re[2]: 正規表現でメールアドレスを調べる
□投稿者/ 渋木宏明(ひどり) (735回)-(2008/05/01(Thu) 17:58:33)
渋木宏明(ひどり) さんの Web サイト
2008/05/01(Thu) 18:36:37 編集(投稿者)

>メールアドレスとして正しいか確認したいと考えております。

あんまり厳しくやらない方がいいと思いますよ。

規約通りのチェックを行おうとすると、それだけでも相当めんどくさい正規表現になります。

で、じゃあそれでいーかというとそーでもなくて、たとえば D*C*M* ユーザのメールアドレスには激しく規約に違反しているものが存在しますが、ものすごい数のユーザがいるため、むげに弾き飛ばすわけにもいかなかったりします。

引用返信 編集キー/
■17825 / inTopicNo.4)  Re[3]: 正規表現でメールアドレスを調べる
□投稿者/ まぐねしうむ (28回)-(2008/05/02(Fri) 10:32:17)
回答有難うございます。

特に魔界の仮面弁士さん、HPまで提示していただき有難うございます。
提示して頂いたHPを参考にコードを修正したいと思います。

有難うございました。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -