名付けて mailread_ar.rb かな?
Ruby には mailread.rb というライブラリが標準で添付されている。これはヘッダをハッシュに、本文を配列に収めてくれるもので、凝ったメールを扱わなければ結構便利。
しかし複数ある、例えば Received ヘッダが一つのハッシュのうえで上書きされまくって最後の(Received の時系列で言うと最初の)ものしか残らないので、ちょっと不便。
そこですべてのヘッダ情報を配列を値に持つハッシュに収めることにした。
16c16,19
< @header[attr] = $2
---
> if ( !@header.has_key?( attr ) )
> @header[attr] = Array.new()
> end
> @header[attr].push( $2 )
19c22,24
< @header[attr] += "\n" + line
---
> last = @header[attr].last
> last += "\n" + line
> @header[attr][@header[attr].size-1] = last
値を取り出すときは全部配列になっちゃってるから一手間増えるけど、まぁそれは仕方ないってことで。
※ これが PHP の場合は配列を扱う一手間がばかにならないから、もうちょっとなんか工夫しなきゃって気になるんだけど、Ruby なら楽だから。
More
Recent Posts
- » GuideRailというimmutable value objectをうまく使うためのgemを作ってみた
- » PlantUMLの-pipeモードとEmacsのplantuml-mode
- » Emacs + ruby-lsp + Standardで快適コーディング
- » ものぐささんのためのTypeScriptを使いつつGASでも使えるライブラリ開発環境
- » quickjs.rbでRubyの環境からJavaScriptのロジック(I/Oのないコード)の動作結果を得る
- » kintoneからエクスポートしたCSVデータの変換ライブラリを作ってみた
- » MCPメモ
- » Mermaidの大きすぎる余白を調整する方法の一例
- » LLMアプリをLLMを使いながら作ってみた
- » Gemini Advancedでもうゲームが変わっていた