我試圖讀取文件和創建的內容是一個HashMap,但我有在分析步驟的麻煩。文本文件的一個示例是解析文本文件時,內容沒有很好形成
put 3
returns 3
between
3
pargraphs 1
4
3
#foo 18
****** 2
單詞變成鍵,數字是值。請注意,間距相當不穩定。這個單詞並不總是一個單詞(它不會被/ \ w + /拾取),與該單詞相關的數字並不總是在同一行上。這就是爲什麼我稱它不健全的原因。如果一行中有一個單詞和一個數字,我可以將它分開,但不幸的是,情況並非如此。我正在嘗試創建一個像這樣的hashmap。
{"put"=>3, "#foo"=>18, "returns"=>3, "paragraphs"=>1, "******"=>2, "4"=>3, "between"=>3}
來自Java,這相當簡單。使用Scanner我可以使用scanner.next()作爲下一個關鍵字,scanner.nextInt()作爲關聯的數字。我不太清楚在Ruby中如何做到這一點,看起來我必須使用正則表達式來處理所有事情。
順便說一句,我完全不建議在這個例子(見我答案),但是Ruby有一個'StringScanner'庫。 http://ruby-doc.org/core/classes/StringScanner.html – Peter 2010-02-21 06:24:19