Email::Address::Loose Email::Address::JP::Mobile 株式会社モードツー 冨田 尚樹  ( tomi-ru ) http://e8y.net/ Yokohama.pm  テクニカルトーク  #1 20...
 
MobileCat  というのを始めました <ul><li>Catalyst を中心に、 </li></ul><ul><li>CPAN モジュールを組み 合わせてモバイルの課題を 解決するサンプル & サイト </li></ul><ul><li...
ここでやっています <ul><li>http://mobilecat.koneta.org/ </li></ul><ul><li>http://coderepos.org/share/browser/websites/mobilecat/ </...
ご意見・ご参加大歓迎 <ul><li>なるべく楽をしてサイトを作りたい開発者の一人に過ぎません >< </li></ul><ul><li>うちではここでこの処理入れてますよ </li></ul><ul><li>こうするといい感じです </li>...
欲しくて作ったモジュールの中から <ul><li>Email::Address::Loose </li></ul><ul><li>Email::Address::JP::Mobile </li></ul>
の紹介 <ul><li>本日 coderepos に UP しました </li></ul><ul><li>pep に声かけたのちに、 CPAN に UP 予定 </li></ul>
(1) Email::Address::Loose <ul><li>- Make Email::Address->parse() loose </li></ul><ul><li>http://coderepos.org/share/browse...
Email::Address の Loose 版 <ul><li>Email::Address は、 URL に対する URI.pm みたいなメールアドレスのオブジェクト </li></ul><ul><li>テキスト内からメールを探し  Ema...
<!> [email_address] [email_address]  foo..bar@docomo.ne.jp
それ Email::Valid::Loose でできるよ <ul><li>miyagawa さん作 </li></ul><ul><li>受け取ったものが一つのアドレスとして Valid かどうかチェックするモジュール  Email::Valid...
<ul><li>正規表現が  our  なので探すのにも使えます </li></ul>use Email::Valid::Loose; my $to = 'Tomi <--ee--..@ezweb.ne.jp>'; my ( $ address...
Email::Address::Loose をつかうと use Email::Address; my $to = 'foo <-e-_..a-@ezweb.ne.jp>'; my ($email) = Email::Address->parse...
こうかけて、 <ul><li>isa Email::Adderss </li></ul>use Email::Address::Loose; my $to = 'foo <-e-_..a-@ezweb.ne.jp>'; my ($address...
XML::Liberal  な機能 use Email::Address; use Email::Address::Loose  -override; my $to = 'foo <-e-_..a-@ezweb.ne.jp>'; my ($ad...
(2) Email::Address::JP::Mobile <ul><li>Extends Email::Address for Japanese cellphone </li></ul><ul><li>http://coderepos.or...
HTTP::MobileAgent  のメール版 use Email::Address; my $to = 'docomo.taro@docomo.ne.jp'; my ($email) = Email::Address->parse($to)...
use Email::Address; use Email::Address::JP::Mobile; my $to = 'docomo.taro@docomo.ne.jp'; my ($email) = Email::Address->par...
それ Mail::Address::MobileJp  でできるよ <ul><li>miyagawa さん作 </li></ul>use Mail::Address::MobileJp; my $to = 'softbank.taro@soft...
しかし <ul><li>is_ 系だけじゃないのも生やしまくり </li></ul>use Email::Address; use Email::Address::JP::Mobile; my $to = 'softbank.taro@soft...
実はこっちを先に作った <ul><li>Email::Address::Loose 要る </li></ul>use Email::Address; use Email::Address::Loose  -override; use Email...
ありがとうございました <ul><li>Email::Address::Loose </li></ul><ul><li>Email::Addrsss::JP::Mobile </li></ul>
MobileCat やりながら他に <ul><li>HTML::MobileJp::Filter </li></ul><ul><li>Catalyst::Plugin::   Unicode::Encoding::JP::Mobile </li...
Upcoming SlideShare
Loading in...5
×

Yokohama.pm #1 Email::Address::Loose / Email::Address::JP::Mobile

3,809

Published on

Published in: Technology
1 Comment
0 Likes
Statistics
Notes
  • メアドを探すという話題で、忘れてましたが Email::Find というのもあります。
    返すのは Mail::Address オブジェクトになりますが、サブクラスを作って
    Looseな探索をすることも可能です。

    http://search.cpan.org/perldoc?Email::Find
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

No Downloads
Views
Total Views
3,809
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
1
Likes
0
Embeds 0
No embeds

No notes for slide

Yokohama.pm #1 Email::Address::Loose / Email::Address::JP::Mobile

  1. 1. Email::Address::Loose Email::Address::JP::Mobile 株式会社モードツー 冨田 尚樹 ( tomi-ru ) http://e8y.net/ Yokohama.pm テクニカルトーク #1 2008/6/27
  2. 3. MobileCat というのを始めました <ul><li>Catalyst を中心に、 </li></ul><ul><li>CPAN モジュールを組み 合わせてモバイルの課題を 解決するサンプル & サイト </li></ul><ul><li>ないものは作る( Cat 外で使えるような) </li></ul><ul><li>作りかけで放置していたものや </li></ul><ul><li>前社内で作ったやつを切り出す </li></ul>
  3. 4. ここでやっています <ul><li>http://mobilecat.koneta.org/ </li></ul><ul><li>http://coderepos.org/share/browser/websites/mobilecat/ </li></ul><ul><li>#mobilejp </li></ul><ul><li>http://mobilehacker.g.hatena.ne.jp/ </li></ul>
  4. 5. ご意見・ご参加大歓迎 <ul><li>なるべく楽をしてサイトを作りたい開発者の一人に過ぎません >< </li></ul><ul><li>うちではここでこの処理入れてますよ </li></ul><ul><li>こうするといい感じです </li></ul><ul><li>とかとか </li></ul>
  5. 6. 欲しくて作ったモジュールの中から <ul><li>Email::Address::Loose </li></ul><ul><li>Email::Address::JP::Mobile </li></ul>
  6. 7. の紹介 <ul><li>本日 coderepos に UP しました </li></ul><ul><li>pep に声かけたのちに、 CPAN に UP 予定 </li></ul>
  7. 8. (1) Email::Address::Loose <ul><li>- Make Email::Address->parse() loose </li></ul><ul><li>http://coderepos.org/share/browser/lang/perl/Email-Address-Loose/ </li></ul>
  8. 9. Email::Address の Loose 版 <ul><li>Email::Address は、 URL に対する URI.pm みたいなメールアドレスのオブジェクト </li></ul><ul><li>テキスト内からメールを探し Email::Address オブジェクトのリストで返す </li></ul>use utf8; my $to = ' &quot; 冨田 &quot; <tomita@cpan.org>, aa@example.net&quot;'; use Email::Address; my ($address) = Email::Addrss->parse($to); $address->name; # x{51A8}x{7530} $addrsss->user; # tomita $address->address; # tomita@cpan.org
  9. 10. <!> [email_address] [email_address] foo..bar@docomo.ne.jp
  10. 11. それ Email::Valid::Loose でできるよ <ul><li>miyagawa さん作 </li></ul><ul><li>受け取ったものが一つのアドレスとして Valid かどうかチェックするモジュール Email::Valid の Loose 版。 </li></ul><ul><li>フォームの検証とか </li></ul>use Email::Valid::Loose; $to = '--ee--..@ezweb.ne.jp'; Email::Valid::Loose->address($to); # OK $to = 'Tomi <--ee--..@ezweb.ne.jp>'; Email::Valid::Loose->address($to); # NG
  11. 12. <ul><li>正規表現が our なので探すのにも使えます </li></ul>use Email::Valid::Loose; my $to = 'Tomi <--ee--..@ezweb.ne.jp>'; my ( $ address) = $to =~ /( $Email::Valid::Loose::Addr_spec_re )/g;
  12. 13. Email::Address::Loose をつかうと use Email::Address; my $to = 'foo <-e-_..a-@ezweb.ne.jp>'; my ($email) = Email::Address->parse($to); $email ; # Email::Address では undef だけど
  13. 14. こうかけて、 <ul><li>isa Email::Adderss </li></ul>use Email::Address::Loose; my $to = 'foo <-e-_..a-@ezweb.ne.jp>'; my ($address) = Email::Address::Loose->parse($to) ; $address->address; # -e-_..a-@ezweb.ne.jp $address->user; # -e-_..a-
  14. 15. XML::Liberal な機能 use Email::Address; use Email::Address::Loose -override; my $to = 'foo <-e-_..a-@ezweb.ne.jp>'; my ($address) = Email::Address->parse($to); $address->address; # -e-_..a-@ezweb.ne.jp $address->user; # -e-_..a-
  15. 16. (2) Email::Address::JP::Mobile <ul><li>Extends Email::Address for Japanese cellphone </li></ul><ul><li>http://coderepos.org/share/browser/lang/perl/Email-Address-JP-Mobile/ </li></ul>
  16. 17. HTTP::MobileAgent のメール版 use Email::Address; my $to = 'docomo.taro@docomo.ne.jp'; my ($email) = Email::Address->parse($to); $email->address; # docomo.taro@docomo.ne.jp
  17. 18. use Email::Address; use Email::Address::JP::Mobile; my $to = 'docomo.taro@docomo.ne.jp'; my ($email) = Email::Address->parse($to); $email->address; # docomo.taro@docomo.ne.jp $email ->is_docomo ; # 1 $email ->is_mobile ; # 1
  18. 19. それ Mail::Address::MobileJp でできるよ <ul><li>miyagawa さん作 </li></ul>use Mail::Address::MobileJp; my $to = 'softbank.taro@softbank.ne.jp'; is_mobile($to); # 1 is_imode($to); # 0
  19. 20. しかし <ul><li>is_ 系だけじゃないのも生やしまくり </li></ul>use Email::Address; use Email::Address::JP::Mobile; my $to = 'softbank.taro@softbank.ne.jp'; my ($email) = Email::Address->parse($to); $email->carrier_name; # Thirdforce $email->carrier_name_aka; # Vodafone $email->encoding_name; # x-utf8-softbank $email->is_willcom; # 0
  20. 21. 実はこっちを先に作った <ul><li>Email::Address::Loose 要る </li></ul>use Email::Address; use Email::Address::Loose -override; use Email::Address::JP::Mobile; my $to = 'foo <-e-_..a-@ezweb.ne.jp>' ; my ($address) = Email::Address->parse($to); $address->address; # -e-_..a-@ezweb.ne.jp $address->is_kddi; # 1
  21. 22. ありがとうございました <ul><li>Email::Address::Loose </li></ul><ul><li>Email::Addrsss::JP::Mobile </li></ul>
  22. 23. MobileCat やりながら他に <ul><li>HTML::MobileJp::Filter </li></ul><ul><li>Catalyst::Plugin:: Unicode::Encoding::JP::Mobile </li></ul><ul><li>Catalyst::View::MobileJpFilter </li></ul><ul><li>Qpsmtpd::Plugin::Queue::Adapter </li></ul><ul><li>Email::Abstract::QpsmtpdTransaction </li></ul><ul><li>Email::MIME + ? </li></ul>

×