给定字符串:
"hello %{one} there %{two} world"
此代码不起作用:
s = "hello %{one} there %{two} world"
r = Regexp.new(/(%{.*?})+/)
m = r.match(s)
m[0] # => "%{one}"
m[1] # => "%{one}"
m[2] # => nil # I expected "%{two}"
但是在Rubular上,相同的正则表达式(%{.*?})
有效并返回%{one}
and %{two}
。
我究竟做错了什么?