Ruby拆分不适用于字符串?

时间:2017-07-04 08:13:37

标签: ruby string

我试图拆分一个字符串来大写每个单词。

代码:

def titleize(a)
little_words = %w(a an the)
#a = %w(a quick brown fox jumps) --> works if an array is specifically used.
a.split(" ")
a.each do |i|
    if !little_words.include? "#{i}"
    i.capitalize!
    end
end
g = a.join(" ")
return g
end

print titleize("a quick brown fox jump")

错误:

  `titleize': undefined method `each' for "a quick brown fox jump":String (NoMethodError)

但是,我遇到了这个错误。根据我的理解,错误是说我的变量' a'是一个字符串,不包含方法'每个'。我已经应用了' split("")'将字符串转换为数组。为什么不起作用?

1 个答案:

答案 0 :(得分:2)

因为你忽略了方法返回的内容

a = a.split(" ")

并且" "是拆分的默认设置,因此您可以简单地编写

a = a.split