只有在逗号之前添加空格?
有没有办法在字符串中的逗号之后添加空格,只有它不存在。
例:
word word,word,word,
最终会成为
word word, word, word,
ruby或rails中是否有函数可以执行此操作?
这将用于数十万个句子,因此它需要很快(性能很重要)。
使用否定前瞻来检查逗号后没有空格,然后用逗号和空格替换。
print 'word word,word,word,'.gsub(/,(?![ ])/, ', ')
只需使用正则表达式替换","
后面没有带", "
的空格的所有实例。
str = "word word,word,word," str = str.gsub(/,([^ ])/, ', \1') # "word word, word, word,"
如果字符串不包含多个相邻的空格(或者不应包含这样的空格),则不需要正则表达式:
"word word, word, word,".gsub(',', ', ').squeeze(' ') #=> "word word, word, word, "