名付けて 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
- » Gemini Advancedでもうゲームが変わっていた
- » 今さらLLMのモデルの違いとプロンプトエンジニアリングについて
- » Bundler環境でIRBでもLSPでもドキュメントを利用する方法
- » Ruby 3.2と3.3のirb historyの扱いの違いと対処方法
- » Result型とRailway Oriented Programmingをめぐる旅
- » dry-operationのススメとエラー情報をViewまで持っていく方法の模索
- » aligach.netのRubyとViteをバージョンアップした
- » ViteRuby 3.7.0は起動方法のデフォルトがnpx経由になった
- » GmailからSpreadsheetとGoogle Driveへ書き出すGASライブラリを作った
- » 面倒くさがり屋のためのTypeScript環境