为什么"101is5".to_i在Ruby中返回101?

Nob*_*ita -1 ruby integer casting

我打开了我喜爱的irb控制台(Ruby 1.9.3),然后输入:

"101is5".to_i
Run Code Online (Sandbox Code Playgroud)

我得到:

101
Run Code Online (Sandbox Code Playgroud)

我假设这是预期的行为,但我没有看到这样做有什么好处?为什么我们想要一个包含数字和字符的字符串才能成功进入整数转换?

ryu*_*ice 5

如果你想要得到一个错误使用Integer("101is5"),而不是