我试图读取文件和创建的内容是一个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