使用Ruby测试字符串是否基本上是引号中的整数?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (21)

我需要一个函数,is_an_integer,其中

"12".is_an_integer? returns true
"blah".is_an_integer? returns false

在ruby上怎样才能做到这一点?

提问于
用户回答回答于

你可以使用正则表达式。

class String
    def is_i?
       !!(self =~ /\A[-+]?[0-9]+\z/)
    end
end

用户回答回答于

这里有个简单的方法:

class String
  def is_integer?
    self.to_i.to_s == self
  end
end

>> "12".is_integer?
=> true
>> "blah".is_integer?
=> false

扫码关注云+社区