根据文档,#scan
应该同时接受String
和Regexp
实例作为参数。但是测试显示出奇怪的行为:
▶ cat scantest.rb
#!/usr/bin/ruby
puts '='*10
puts 'foo'.scan '.'
puts '='*10
puts 'foo'.scan /./
puts '='*10
▶ rb scantest.rb
# ⇒ ==========
# ⇒ ==========
# ⇒ f
# ⇒ o
# ⇒ o
# ⇒ ==========
在pry
and内部irb
,它也不能正确扫描字符串。我究竟做错了什么?