ROR +通过使用另一个字符的ruby代码检测它来替换最后一个字符

时间:2010-10-21 16:45:21

标签: ruby-on-rails ruby

是否可以在轨道上的ruby中检测字符串的最后一个字符并将其替换为“”。 说明::假设我有字符串为“demo-”然后我必须检查它的最后一个字符,如果它是“ - ”然后用“”替换它,否则不应该采取任何行动。

示例 - Code ::

search_text.downcase! if !search_text.nil?

现在如果seach_text的值为“demo-”,则通过替换“ - ”将其更改为“demo”。

提前致谢!!!

3 个答案:

答案 0 :(得分:7)

更简单:

text.chomp!('-')

chomp已经包含if条件:如果字符存在于字符串的末尾,则将其删除。

答案 1 :(得分:0)

> a = "abc-"
=> "abc-"
>> a.chop! if a[-1] == 45 # if last character is a minus sign chop it off
=> 45
>> a
=> "abc"

答案 2 :(得分:-1)

尝试以下

text.chop! if text[text.length-1,1] == "-"

text.chop!删除最后一个字符并将其保存到同一个对象