Ruby Regex奇怪的错误,发生了什么?

时间:2012-04-08 18:11:40

标签: ruby regex

我有以下程序:

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。发生了什么事?

1 个答案:

答案 0 :(得分:3)

@string.scan(/[@#match]/) do |pattern|不正确。 #{@match}是您正在寻找的。