• Like
  • Save
Yokohama.pm #1 Email::Address::Loose / Email::Address::JP::Mobile
Upcoming SlideShare
Loading in...5
×
 

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

on

  • 5,406 views

 

Statistics

Views

Total Views
5,406
Views on SlideShare
5,403
Embed Views
3

Actions

Likes
0
Downloads
3
Comments
1

1 Embed 3

http://www.slideshare.net 3

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

11 of 1

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • メアドを探すという話題で、忘れてましたが Email::Find というのもあります。
    返すのは Mail::Address オブジェクトになりますが、サブクラスを作って
    Looseな探索をすることも可能です。

    http://search.cpan.org/perldoc?Email::Find
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

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

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