ruby数组中的空间%w
如果要使用%w(ab c)语法,如何在ruby数组中添加空格字符?转义:ruby数组中的空间%w,ruby,arrays,Ruby,Arrays,如果要使用%w(ab c)语法,如何在ruby数组中添加空格字符?转义: %w(a b\ c) # => ["a", "b c"] 试试这个: >> a = %w(a\ b c) => ["a ", "b", "c"] 试试这个: >> a = %W[a \s b] => ["a", " ", "b"] 谢谢在你的回答之后,我明白我该怎么做了。我只想要这个-%w(a\b c)#=>[“a”,“u”,“b”,“c”]虽然这是一个“正确”的答案,但它
%w(a b\ c) # => ["a", "b c"]
试试这个:
>> a = %w(a\ b c)
=> ["a ", "b", "c"]
试试这个:
>> a = %W[a \s b]
=> ["a", " ", "b"]
谢谢在你的回答之后,我明白我该怎么做了。我只想要这个-%w(a\b c)#=>[“a”,“u”,“b”,“c”]虽然这是一个“正确”的答案,但它非常不可读,这违背了
%w
的目的。不要这样做。这其实有点聪明@VasiliyErmolovich。Ruby有各种各样的“技巧”,我总是在寻找用这种语言表达事物的新方法。尽管可能不可读,但Ruby语言首先支持您回复中的语法,这一点很好!可以公平地指出,只有当您创建一个单词数组时,才会选择这种语法:“没有空格和特殊字符的非空字符串”。所以你是对的,你可能永远都不应该做我建议的事情。它们%w()
语法的意思是作为一种快捷方式来处理常见情况。我建议在本例中使用更详细的语法['a',''b']
。可读性更强,对其他程序员来说不那么令人惊讶。