我的问题是我有一个非常大的文件,例如:
f = %q(1:9- The cost of\n
51:10- The beams cost so much\n
41:11- Should we buy more beams\n
21:12- Why buy more} 我需要做的是,例如,从包含特定单词的任何行中提取每个梁单词。但每个梁单词都必须带有它所在的行的引用,如下所示:
51:10 beams\n
41:11 beams\n 如有任何帮助,我们不胜感激。
发布于 2011-08-12 20:15:12
/(\d{2,2}:\d{2,2})-.*?(beams)/第一个捕获将包含线参考,第二个捕获将包含字波束
发布于 2011-08-12 20:25:48
您可以使用scan进行提取
f.scan(/^(\d+\:\d+).+?(beams)/)
=> [["51:10", "beams"], ["41:11", "beams"]]对于输出:
f.scan(/^(\d+\:\d+).+?(beams)/).each do |pair|
puts pair.join(" ")
end
=>
51:10 beams
41:11 beamshttps://stackoverflow.com/questions/7039829
复制相似问题