【发布时间】:2019-06-13 13:37:29
【问题描述】:
我需要删除字符串末尾的所有特殊字符,这些特殊字符有时会出现有时不会出现。
我已经写了这个.gsub(/[,()'"]./,''),但它没有从字符串中删除.(句号)。
你能告诉我这有什么问题吗?
【问题讨论】:
-
您的意思是写
.gsub(/[,()'".]/,'')?使用字符类中的点?可以用\z指定字符串的结尾。尝试.gsub(/[,()'".]+\z/,'')删除字符串末尾字符类中的 1 个或多个字符。几个具有预期输出的示例字符串会有所帮助。 -
谢谢,它的工作方式正是我需要的。
-
更多标签并不比更少标签好。您应该只包括那些读者可能会搜索或排除在搜索之外的内容。在此基础上,我建议您删除“string”、“substring”和“gsub”。这不是 Rails 问题,因此应该删除“ruby-on-rails”。您缺少的一个是“正则表达式”。因此,我建议您的标签是“ruby”和“regex”。此外,Ruby 没有为“特殊字符”提供定义,因此您应该在问题中定义该术语(或者只列出充电器而不给它们命名)。它们可能是从您的正则表达式中推断出来的,但最好是明确的。
标签: ruby-on-rails ruby string substring gsub