如何跳过字母表字符串并接受浮点数/整数

时间:2014-03-14 11:29:05

标签: ruby

我有一组字符串。我想跳过那些包含所有字符的字符串,并且只考虑在[0-9]或“。”中包含字符的字符串。即漂浮。

我该怎么做?我尝试使用if str[/[a-zA-Z]+/] == str。但是这给了我整数/浮点数

的错误
if str[/[a-zA-Z]+/]  == str
    continue
else
    //do something

这会出错:can't convert Regexp into Integer 感谢

2 个答案:

答案 0 :(得分:2)

考虑到OP正在寻找非数字字符串来继续: - 和str是一个String类对象,例如: str =" abcd"或str =" 1.95"等

regExp = /^[0-9]\d*(\.\d+)?$/

unless str[regExp].eql?(str)
    # continue
else 
    # do something
end

答案 1 :(得分:0)

if (str =~ /[a-zA-Z]+/).nil? #if there are no letters in str
  #continue with string
else
  #Regex test failed
end