如何拆分字符串,例如:

aaaaa
bbbb

aaaaa
ccccccc

aaa
rrrrt

使用空行作为分隔符的数组?

最佳答案

好吧,如果String#split

'aaaaa bbbb'.split
=> ["aaaaa", "bbbb"]

split(pattern=nil, [limit]) → an_array
基于分隔符将str分为多个子字符串,返回这些子字符串的数组。
[…]
如果patternnil,则使用$的值。如果$;是nil(这是默认值),str将被拆分为空白,就像指定了' '一样。
更新:
要在空行上拆分,可以使用/\n{2,}/模式。它还处理用多个空行分隔的段落:
a = <<END
aaaaa
bbbb


aaaaa
ccccccc

aaa
rrrrt
END

a.split(/\n{2,}/)
=> ["aaaaa\nbbbb", "aaaaa\nccccccc", "aaa\nrrrrt\n"]

09-25 18:37