メールの署名から個人情報を抜き出すJavaScript

情報共有の進んだ会社とかでは、メールをもらったお客さんのことをちゃんと組織として覚えておくために、コンタクト情報としてデータベースに共有することを推進していることが多い。でも、いくらメールには署名があって、すでに電子化されているとはいえ、ふつうはテキスト直書きの署名だったりして、構造化されてなくってかなり扱いにくい。データベースに登録するために、メーラーとブラウザの間で氏名をコピペ、メアドをコピペ、電話番号をコピペということをひたすら繰り返す。正直あまりやりたくない。

まあそんな作業をやらされる側にいるという大前提があるのだけれども、そんな不毛な作業をちょっとでも軽減するために、このスクリプトは作られました、実用系スクリプト第3弾。実用系ということですが、実装はたいしたことない、でもなんか今までになく便利になりそうな予感。

デモサイトはこちら:
http://www.geocities.jp/stormriders999/signature_pii_extractor.html

やってることは署名の中にあるテキストから
・氏名(姓名)
・会社名
・住所
・郵便番号
・電話
・FAX
・メールアドレス
・Webサイト

を、ひたすら正規表現で抜き出している。姓名を正規表現で抜くのは難しいけれども、まずはスペースで区切られた2単語をとりあえず全部認識して、そのうち上の行にあるものを優先して表示している。これは氏名が署名の上の方に書かれることが多いだろうという経験則に基づく。

前にも言ったけど、入力がある程度限定された環境下では、正規表現で積んだレベルでもある程度役に立つんじゃないか、と思ってる。特にJavaScriptはユーザに近いところで動くから、ちょっとくらい誤爆やらで精度低くってもユーザのフィードバックが早く、そういう意味で融通が効きやすい。完璧は必要ないんだ、ちょっとでも便利になればそれでいいんだ、という割り切りで。

ってか、メアドや電話番号の抜き出しくらいだったら正規表現で余裕だってのはプログラマからは常識なんだろうけど、オペレータな女の子から見たらそれはもう魔法な訳です。モテをねらうなら画像でモテとか多分まちがってるでしょ。


いままでに作った実用系のスクリプト:いずれも正規表現がらみ。

1. 住所情報を抜き出してGoogle Mapsへのリンクを張るブックマークレット
http://d.hatena.ne.jp/shinichitomita/20060713/1152800000

2. 日付時刻の入力を支援するJavaScript
http://d.hatena.ne.jp/shinichitomita/20061216/1166331425