在Ruby中,如何检查某个文件是否包含某些单词?我试过这个:
foo = File.open('some-file', 'r').read
foo.index(/^word$/)
但这不起作用。
答案 0 :(得分:7)
File.readlines('some-file').grep(/word/)
记住^
与一行的开头匹配,$
与一行的结尾匹配。因此,如果您搜索^xyz$
,您实际上正在搜索xyz\n
(文件开头)或\nxyz\n
(文件中间的某个位置)。没有其他字符串可以匹配。
答案 1 :(得分:2)
您正在搜索一行,其中包含该词。也许受限制较少的搜索有助于:
foo.index(/word/)