我想知道是否有人能告诉我 Ruby 1.8.7 和 Ruby 1.9.3 之间发生了什么变化。我在下面列出了一个示例,它在 2 个版本中的行为完全不同,但根据 Ruby 文档,这些版本之间似乎没有任何变化。
红宝石 1.8
number = '123-45-6789'
# => "123-45-6789"
number.scan(/[0-9]/)
# => ["1", "2", "3", "4", "5", "6", "7", "8", "9"]
number.scan(/[0-9]/).to_s
# => "123456789"
红宝石 1.9
number = '123-45-6789'
# => "123-45-6789"
number.scan(/[0-9]/)
# => ["1", "2", "3", "4", "5", "6", "7", "8", "9"]
number.scan(/[0-9]/).to_s
# => "[\"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\"]"
并不是真的在寻找一种不同的方法来做到这一点,只是好奇两个版本之间发生了什么变化。