• 締切済み

メールアドレス「あいうえお<xxx@yyy.zzz>」@より前の「xx

メールアドレス「あいうえお<xxx@yyy.zzz>」@より前の「xxx」と@より後の「yyy.zzz」 を取り出したいと思っているのですが、正規表現でどのように書けばよいのでしょうか。 元のメールアドレスは「xxx@yyy.zzz」だけの場合もあったりします。 よろしくお願いいたします。

みんなの回答

回答No.1

表示がずれるので、全角の空白があることに注意。全角の空白を通常のスペースにして下さい。 # メールアドレスのフォーマットのチェックが不完全 # 正確にやる場合は、http://www.din.or.jp/~ohzaki/mail_regex.htm 参照のこと my @mail_list = qw(あいうえお<xxx@yyy.zz> aaa@bbb.cc ddd.eee.ff); for my $mail (@mail_list) {   if ( $mail =~ /([^<]+)@([^>]+)/ ) {     my $user  = $1;     my $domain = $2;     print "user=$user, domain=$domain", $/;   }   else {     warn "$mail : format error", $/;   } }

参考URL:
http://www.din.or.jp/~ohzaki/mail_regex.htm

関連するQ&A

専門家に質問してみよう