向井さま

ほしい行が
> data['Title-1']['Title-B']
の1行で取得できてしまうなんて夢のようです。
yaml、調べてみようと思います。

しかし、data.txt は他社から送付されるファイルなので、形式の変更は難しいです。

--- Jun Mukai <mukai / jmuk.org> からのメッセージ:
> 向井という者です。
> # どうせ真面目な解答はほかの人がしてくれると思うので
> 
> data.txtはこの形式でなければならないのでしょうか? もし多少の改変が許
> されるのであれば、 yaml にしてしまうと処理が楽になるのではないかと思い
> ます。
> 
> 
> --- data.yml ---
> Title-1:
>     Title-A:
>         - content1
>     Title-B:
>         - content2
>         - content3
> Title-2:
>     Title-A:
>         - content4
>         - content5
>     Title-B:
>         - content6
> ----------------
> 
> とすれば、
> -- yaml版 --
> require 'yaml'
> data = YAML.load('data.yml')
> data['Title-1']['Title-B']  # => ['content2', 'content3']
> ----
> 
> のようになります。ここでの data はただのハッシュなので、好きなように操
> 作することができます。
> 
> もちろん yaml を覚えないと使えなくなってしまいますが、yamlについてはちょ
> うどるびまの記事がありますね。
> http://jp.rubyist.net/magazine/?0009-YAML
> http://jp.rubyist.net/magazine/?0010-YAML
> 
> また、 YAML Cookbook も参考になります。英語のページですが、コード比較
> を見るだけでだいたいわかるようになると思います。
> http://yaml4r.sourceforge.net/cookbook/
> 
> 
> 
> data.txt そのままで処理したい場合は、すぐ思いつくのはインデント数から
> 構造を推定していく方法でしょうか。
> 
> いずれにせよ、井沢さんの今のコードでは、順序をちょっと変えたり、新しい
> 項目を追加するとえらいことになるので、後々で大変になると思います。
> # これまた用途にもよりけりでしょうが……
> 
> 

--------------------------------------
Know more about Breast Cancer
http://pr.mail.yahoo.co.jp/pinkribbon/