繁体   English   中英

Ruby如何删除多个空格字符?

[英]Ruby how to remove a more than one space character?

Ruby好的,我想删除一个字符串中的多个空格字符,如果有的话。 我的意思是,假设我有这样的文字:

I want to     learn ruby more and more.

看到“to”之后和“学习”之前有一个以上的空格字符,无论是标签还是几个空格。 现在我想要的是,我怎么知道文本文件中是否有这样的东西,我想让每个单词或字符串只有一个空格。 所以它会变成这样

I want to learn ruby more and more.

我可以使用Gsub吗? 或者我需要使用其他方法吗? 我尝试了Gsub,但无法弄清楚如何以正确的方式实现它,以便它可以产生我想要的结果。 希望我能清楚地解释清楚。 任何帮助表示赞赏,谢谢。

String#squeeze删除多个字符的运行:

'I want to     learn ruby more and more.'.squeeze(' ')
# => "I want to learn ruby more and more."

您可以使用gsub将一个或多个空格(regex / +/ )替换为单个空格:

'I want to     learn ruby more and more.'.gsub(/ +/, " ")
#=> "I want to learn ruby more and more."

使用此正则表达式从字符串中删除所有空格,包括空格制表符 我用它来从登录字段的电子邮件地址中剥离空格。

'   I want to   learn ruby more and more.'.gsub(/\s/,"")
# => "Iwanttolearnrubymoreandmore."

/\\s/匹配包括制表符在内的任何空格字符,而/ +/则不匹配。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM