【问题标题】:Read Integer within a String读取字符串中的整数
【发布时间】:2012-03-17 03:13:28
【问题描述】:

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

GAME_SWITCH(476)

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

此外,还有没有办法检查字符串是否符合这些规则?如果字符串只是 "foobar" 它返回 false?

我正在使用 Ruby 1.8.1

非常感谢!

【问题讨论】:

    标签: ruby-1.8


    【解决方案1】:

    你可以用正则表达式解决这个问题,例如:

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

    【讨论】:

    • 嘿,这成功了!但是,为了正确转换为整数,我必须使用另一个变量,例如 int = str[1].to_i 谢谢!
    【解决方案2】:

    试试这样的

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

    【讨论】:

      猜你喜欢
      • 2016-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多