在字符串中读取整数

时间:2012-03-16 19:08:15

标签: ruby-1.8

我需要以某种方式读取字符串中的整数。字符串如下;

GAME_SWITCH(476)

我需要阅读476部分。注意,每次不会是476,但每次都是“GAME_SWITCH(...)”。我尝试使用.delete方法删除“GAME_SWITCH(”和“)”,但由于某种原因这没有效果。我只想要“476”然后我可以将其转换为整数。

此外,还有一种方法可以检查字符串是否符合这些规则?如果字符串只是“foobar”,它返回false?

我正在使用Ruby 1.8.1

非常感谢!

2 个答案:

答案 0 :(得分:0)

您可以使用正则表达式解决问题,例如:

if m = str.match(/^GAME_SWITCH\((\d+)\)$/)
  m[1].to_i
else
  false
end

答案 1 :(得分:0)

尝试这样的事情

my_string.scan(/\d+/)[0].to_i