我试图去除字符串的前导空格:" Bagsværd".strip#=>" Bagsværd"我希望它返回"Bagsværd"。 最佳答案 字符串"Bagsværd"来自哪里?字符串开头的空格字符很可能不是“正常”空格,而是不间断空格(U+00A0):2.0.0p353:001>"Bagsværd".strip=>"Bagsværd"2.0.0p353:002>"\u00a0Bagsværd".strip=>" Bagsværd"您可以使用gsub删除它而不是strip:2.0.0p353:003>"\u00a0Bagsværd".gs
我有一个看起来像这样的字符串:d="foo\u00A0\bar"当我检查长度时,它说它有7个字符长。上网查了一下,发现是不间断空格。有人可以告诉我如何删除字符串中的所有不间断空格吗? 最佳答案 如果您不特别关心不间断空格,而是关心可能出现在您的字符串中的任何“特殊”unicode空白字符,您可以使用POSIX括号表达式替换它空格:s.gsub(/[[:space:]]/,'')这些括号表达式(与\s这样的匹配器相反)不仅匹配ASCII字符,而且匹配类的所有unicode字符。有关详细信息,请参阅therubydocumentatio
我不确定该怎么做,因为我对正则表达式还很陌生,而且似乎找不到合适的方法来完成这个但是说我有以下字符串(所有制表符和换行符包括)1/2cuponion(chopped)如何删除所有空格并仅用一个空格替换每个实例? 最佳答案 在这种情况下,正则表达式可以很好地工作,因为您希望对整个类别的空白字符一视同仁,并用单个空白字符替换空白字符的任意组合。因此,如果该字符串存储在s中,那么您将执行:fixed_string=s.gsub(/\s+/,'') 关于Ruby将所有空格减少为单个空格,我们在S
things="onething,twothings,threethings,fourthings"给定这个输入,我如何用逗号分割一个字符串,然后修剪它周围的空白?结果:things=["onething","twothings","threethings","fourthings"]目前我有这个:things=things.to_s.tr("\n\t","").strip.split(/,/)这完成了大部分我想要它做的事情,除了在它以逗号分隔时删除前导/尾随空格。实现这一目标的最佳方法是什么?我想将其作为此表达式的一部分来执行,而不是将上述结果分配给单独的数组并对其进行迭代。
我有4个字符串变量name,quest,favorite_color,speed可能是空的。我想将它们连接在一起,在不为空的那些之间放置空格。代码的简单性,即查看和理解的简单程度,比速度更重要。所以:name='Tim'quest='destroy'favorite_color='red'speed='fast'成为'Timdestroyredfast'和name='Steve'quest=''favorite_color=''speed='slow'变成:'Steveslow'注意“Steve”和“slow”之间只有1个空格。我该怎么做(最好在一行中)?
我有一个字符串:"foo(2spaces)bar(3spaces)baaar(6spaces)fooo"如何删除其中重复的空格,使任意两个单词之间的空格不超过一个? 最佳答案 String#squeeze有一个可选参数来指定要挤压的字符。irb>"asdasdasdasd".squeeze("")=>"asdasdasdasd"警告:不带参数调用它会“挤压”所有重复的字符,而不仅仅是空格:irb>'aaabbbbcccc0000123'.squeeze=>"abc0123" 关于ruby
我如何编写一个Ruby函数,用任何类型的空格拆分输入,并从结果中删除所有空格?例如,如果输入是aabbbccddee然后返回一个数组["aa","bbb","cc","dd","ee"]。 最佳答案 这是String#split的默认行为:input=结果:["aa","bbb","cc","dd","ee"]这适用于我测试过的所有Ruby版本,包括1.8.7、1.9.3、2.0.0和2.1.2。 关于Ruby被空格分割,我们在StackOverflow上找到一个类似的问题:
为什么这在Ruby中有效:"foo""bar"#=>"foobar"我不确定为什么要连接字符串而不是给出语法错误。我很好奇这是否是预期的行为,以及它是否是解析器负责争吵的东西(两个没有运算符的字符串被认为是一个字符串)或者语言定义本身正在指定这种行为(隐式连接)。 最佳答案 在C和C++中,stringliterals彼此相邻areconcatenated.由于这些语言影响了Ruby,我猜它是从那里继承的。它现在用Ruby记录:参见thisanswer和thispageintheRubyrepo其中指出:Adjacentstring
我想创建一个删除所有非字母数字字符但保留空格的正则表达式。这是为了在搜索输入到达数据库之前清理它。这是我到目前为止所拥有的:@search_query=@search_query.gsub(/[^0-9a-z]/i,'')这里的问题是它删除了所有空格。如何保留空间的解决方案? 最佳答案 在否定字符组中添加空格:@search_query=@search_query.gsub(/[^0-9a-z]/i,'') 关于ruby-on-rails-如何从字符串中去除非字母数字字符并保留空格?,我
假设我们有这样的字符串:Hello,my\nnameisMichael.如何删除新行并将其后的那些空格剥离到字符串内部以获得此信息?Hello,mynameisMichael. 最佳答案 查看Railssquish方法:https://api.rubyonrails.org/classes/String.html#method-i-squish 关于ruby-删除String中的多个空格和新行,我们在StackOverflow上找到一个类似的问题: https