【发布时间】:2009-06-30 13:09:06
【问题描述】:
我需要从一个列表中的一个模糊列表中提取所有 MP3 标题。
使用 Python 这对我来说很好:
import re
for i in re.compile('mmc.+?mp3').findall(open("tracklist.txt").read()): print i
如何在 Ruby 中做到这一点?
【问题讨论】:
我需要从一个列表中的一个模糊列表中提取所有 MP3 标题。
使用 Python 这对我来说很好:
import re
for i in re.compile('mmc.+?mp3').findall(open("tracklist.txt").read()): print i
如何在 Ruby 中做到这一点?
【问题讨论】:
f = File.new("tracklist.txt", "r")
s = f.read
s.scan(/mmc.+?mp3/) do |track|
puts track
end
这段代码的作用是打开文件进行读取,并将内容作为字符串读取到变量s中。然后扫描字符串以查找正则表达式/mmc.+?mp3/(String#scan 收集所有匹配的数组),并打印找到的每一个。
【讨论】:
我不是很了解python,但应该会
File.read("tracklist.txt").matches(/mmc.+?mp3/).to_a.each { |match| puts match }
或
File.read("tracklist.txt").scan(/mmc.+?mp3/) { |match| puts match }
【讨论】:
更简单:
puts File.read('tracklist.txt').scan /mmc.+?mp3/
【讨论】: