删除逗号和空白红宝石

时间:2015-02-08 16:36:19

标签: ruby regex string palindrome

我是ruby的新手,我的正则表达式知识还有很多不足之处。我试图检查字符串是否是回文,但希望忽略空格和逗号。

我目前的代码是

def palindrome(string)
  string = string.downcase
  string = string.gsub(/\d+(,)\d+//\s/ ,"")
  if string.reverse == string
    return true
  else
    return false
  end
end

非常感谢此处的任何帮助。

2 个答案:

答案 0 :(得分:8)

  

但希望忽略空格和逗号

您无需将\d放入正则表达式中。只需用空字符串替换空格或逗号。

string = string.gsub(/[\s,]/ ,"")

上面的gsub命令会删除所有空格或逗号。 [\s,]与空格或逗号匹配的字符类。

答案 1 :(得分:0)

另一种方法是使用方法String#tr

str = "pat, \t \ntap"

str.tr(" ,\t\n", '') #=> "pattap"