mk-mode BLOG

このブログは自作の自宅サーバに構築した Debian GNU/Linux で運用しています。
PC・サーバ構築等の話題を中心に公開しております。(クローンサイト: GitHub Pages

ブログ開設日2009-01-05
サーバ連続稼働時間
Reading...
Page View 合計
Reading...
今日
Reading...
昨日
Reading...

Ruby - UNIX MBOX メールヘッダ・Subjcet属性の検証!

[ プログラミング ] [ Mail, Ruby ]

こんばんは。

今日は Ruby で UNIX MBOX メールデータ中のメールヘッダ「Subjcet」属性を検証してみました。 以下の過去記事も参照。

「Subjcet」属性とは RFC 5322 でルール化されているもので、メールの件名・題名が設定されるものです。 「Subjcet」属性は必ず設定されないといけないものでもないようですが、基本的にメール送信時に自動的に付加されるものです。 件名を指定せずに送信しても、"Subjcet: “は付加されるようです。 RFC 5322 については以下等も参照。

と言うことで、「Subjcet」属性がどのように設定されているのかを Ruby で検証してみました。 実際には、「Subjcet」の行が存在するか、存在する場合「Subjcet」に値が設定されているか、を検証してみました。

参考までに、当方の UNIX MBOX メールデータ(61,665件)を検証した結果を掲載します。 ※だから何?と言われそうですが、自分の近い将来のための記録として掲載していますので、ご承知おきください。

Ruby スクリプトは今までの検証で使用してきたものを流用しています。

使用した正規表現

今回は設定されているかどうかを見るだけなので簡単なものになっています。 (1文字以上の文字が設定されているかどうか)

1
/^(.+)$/

検証結果

「Subjcet」属性は1メールに複数設定されることはない属性です。 また、必須で設定されないといけないものでもありません。

総件数 61,665
存在しない 49
存在するが非設定 17
設定されている 61,599

RFC的には不正ではありませんが、件名がないということでスパムなどチェックは必要になると思います。


次回はメールヘッダで一番キモになる「Received」を検証してみようかと考えています。 手ごわそう。

以上。

Comments