タグ

ブックマーク / blog.livedoor.jp/nipotan (2)

  • 電話番号、郵便番号にマッチする真の正規表現 : にぽたん研究所

    Shibuya.pm #16 「夏の正規表現祭り」で、正規表現のお話をさせていただきました。 まぁ、「電話番号にマッチする正規表現」とか「郵便番号にマッチする正規表現」とかよく書かれてるけど、「どれもこれも手緩いよね」って話。 あ、だいぶはしょったかな。 とりあえずスライドに書いたので、発表をご覧になってない方はスライドからご覧ください。 ふと見返すと、このブログで電話番号の正規表現を公表するのは 3 度目ですが、あれからだいぶ経ってますね。 今ではもっと厳密な正規表現を作っています。 そして、Number::Phone::JP に続き、Number::ZipCode::JP という酔狂なモジュールが公開された記念で、郵便番号にマッチする正規表現を今回初めて公開しますが、そもそもここまで厳密な正規表現が公開されること自体、邦初公開ってヤツでしょう。 Shibuya.pm でも言いましたが

    電話番号、郵便番号にマッチする真の正規表現 : にぽたん研究所
  • 本邦初公開!電話番号の正規表現 - にぽたん研究所

    近年「邦初公開」って表現、あんま使わないすね。。。 さて、Regexp::Assemble という、正規表現愛をものすごく感じるモジュールを見付けました。 愛がある上に、ものすごく便利です。 use strict; use Regexp::Assemble; my $ra = Regexp::Assemble->new; $ra->add('a'); $ra->add('b'); print $ra->re, "\n"; みたいなのを書くと、 (?-xism:[ab]) という結果になる。 要は、add() メソッドに渡した文字列や正規表現の全てにマッチする正規表現を作ってくれるスグレモノ。 (?-xism: 〜 ) というのは前にも書きましたが quote regex 演算子を使ったために付加される「クロイスタ」です。 この結果に対しては、クロイスタは別に無くても構わないので、実質 [

    本邦初公開!電話番号の正規表現 - にぽたん研究所
  • 1