[PHP-users 6602] メールToヘッダ中の複数アドレス検知

Yoshitake Shinohara php-users@php.gr.jp
Tue, 02 Apr 2002 14:07:47 +0900 (JST)


よしたけ@YYNです。

E-mailからDBへメールを挿入するプログラムを現在書いているところですが、
メールToヘッダ中の複数アドレスを検知する方法でよい方法が浮かびませんでした
ので、お知恵をお貸し頂ければと存じます。

困っていることは、複数のアドレスがToヘッダにかかれていた場合、","で区切る
と思うのですが、単に","でsplit()をかけると送信者名の"?"の部分中に","文字
もしくは相当するコードが含まれていた場合でも分割してしまいます。

そこで、ルールとしては、
    "?"間に含まれる","文字以外の","で分割
となるのですが、これを正規表現でどう表せばよいのでしょうか?
(^(\\".*\\")|,)ですと^が否定ではなく、行頭扱いになってしまって駄目です。
"?"内の文字が固定ではないので、否定が使える[]で組み合わせられません。

正規表現の否定の方法になるかと思いますので、PHPのMLでお伺いする内容じゃ
無いかもしれませんけど、ご存知の方、ご教授頂けます様、お願いいたします。

#一文字ずつなめていくしか無いのかなぁ。

------------------------
YYN partnership company
Yoshitake Shinohara
yoshi@yyn.jp