大写除了数组中选定单词之外的每个单词

psh*_*rma 4 ruby arrays nlp

现在我有

value = "United states of america"
words_to_ignore = ["the","of"]
new_string = value.split(' ').map {|w| w.capitalize }.join(' ')
Run Code Online (Sandbox Code Playgroud)

我想在这里做的是除了这个词of,我希望其余的大写.所以输出就是United States of America.现在我不确定,怎么做到这一点.

Rah*_*ali 6

试试这个:

  new_string = value.split(' ')
    .each{|i| i.capitalize! if ! words_to_ignore.include? i }
    .join(' ')
Run Code Online (Sandbox Code Playgroud)

  • `i.capitalize!除非words_to_ignore.include?我是一样的 (3认同)