我有以下程序:
class Matcher
include Enumerable
def initialize(string, match)
@string = string
@match = match
end
def each
@string.scan(/[@#match]/) do |pattern|
yield pattern
end
end
end
mch = Matcher.new("the quickbrown fox", "aeiou")
puts mch.inject {|x, n| x+n}
应该将字符aeiou
与字符串the quickbrown fox
无论我将什么作为模式,它都会奇怪地打印出字符:thc
。发生了什么事?
答案 0 :(得分:3)
@string.scan(/[@#match]/) do |pattern|
不正确。 #{@match}
是您正在寻找的。 p>