Ruby文件IO分隔符?

5
我将尝试解析一个文本文件,其中每行包含不定数量的单词和数字,例如:
foo 4.500 bar 3.00
1.3 3 foo bar

如何读取以空格分隔而不是换行符分隔的文件?我能否设置File("file.txt").foreach方法使用空格而不是换行符作为分隔符?

3个回答

4

被接受的答案会读取文件,这对于大型文本文件可能会有问题。

更好的解决方案是IO.foreach。它是惯用语,并且会逐个字符地流式传输文件:

File.foreach(filename," ") {|string| puts string}

样例文件包含"this is an example"的结果。

"this"
"is"
"an"
"example"

3

File.open("file.txt").read.split(" ").each


3

您可以使用

open('file.txt').read.split.each

为您提供一个迭代器,用于分隔空格(或换行符)的单词。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接