これつぐです。
はじめまして。


[ruby-list:16995] address field split
> メールのTo:/Cc:/Bcc:フィールドを一個の文字列で持ってるとします。
> 
> 個々のアドレスを要素とする配列にしたいのですが、
> 単に str.split(/[,;]/) とすると
>     "Kikutani, Makoto" <kikutani / sprintmail.com>
> みたいにダブルクウォートの中にコンマが入ってるようなとき誤認します。

rfc822的にはともかく、
実用上はこれで足りると思うのですがいかがでしょう。

str.scan(/(?:"[^"]*"|[^",;]+)+/)

ところでsemi-colonも区切りなんでしたっけ?
それとも別の何かだったかしら……。


ついでに。
知っているうえで書いていないのかもしれませんが一応報告。
UnixUser10月号p148に「Ruby1.4.0リリース」の記事があります。