如何在Ruby中摆脱'dot'

时间:2016-12-28 12:13:48

标签: ruby

我希望在句子结束后摆脱'dot'或将点与'I like dogs.'空格移动到'I like dogs or i like dogs .'

这段代码是否正确?

.gsub(".", "  ") 

感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

我假设您想要更新点,只要它在整个句子中落后。 gsub方法不会像这里那样有效,因为它将取代所有点的所有外观。

正则表达式会这样做:

input = 'I like dogs.'
input.sub(/\.\z/, '') #⇒ to get rid of it
input.sub(/\.\z/, ' .') #⇒ to insert a space before it

\z匹配器匹配字符串的结尾。

替换字符串中的所有点:

input.delete('.') #⇒ to get rid of it
input.gsub('.', ' .') #⇒ to insert a space 

答案 1 :(得分:1)

如果你只想在句子末尾摆脱它,那么最红润的方式是:

a = 'I like dogs.'
p a.chomp('.') #=> "I like dogs"
#modify a by using:
a.chomp!('.')