真的是新问题,对不起。 我有一个由几个单词组成的字符串,并希望将其转换为数组,其中每个单词都是数组中的子数组。
my_string = "Made up of several words"
my_array = []
my_string.split(/\s/) do |word|
my_array << word
end
给了我
["Made", "up", "of", "several", "words"]
但我想得到:
[["Made"], ["up"], ["of"], ["several"], ["words"]]
有人知道我怎么能这样做吗?我正在使用do end语法,因为我想要一个代码块,接下来我可以添加一些逻辑,围绕我对字符串中的某些单词进行操作。感谢。
答案 0 :(得分:5)
下面怎么样:
my_string = "Made up of several words"
my_string.scan(/(\w+)/)
# => [["Made"], ["up"], ["of"], ["several"], ["words"]]
答案 1 :(得分:3)
这会有用吗?
my_string = "Made up of several words"
my_array = my_string.split(/\s+/).map do |word|
[word]
end
# => [["Made"], ["up"], ["of"], ["several"], ["words"]]