将多条线组合成一条线

时间:2015-10-01 11:54:30

标签: ruby

我的档案如下:

[Suresh
asdfala
adsfafa
sdfasdfa
asdfas
asdfasdfasd
[Sala
sdfadsf
adsfasd
asdfa
wewet

根据分隔符"[",我想分开这些行。我想要一个输出:

[Suresh asdfala adsfafa sdfasdfa asdfas asdfasdfasd

[Sala sdfadsf adsfasd asdfa wewet

2 个答案:

答案 0 :(得分:1)

使用Stirng.gsub

,您可以使用字符串替换轻松完成此操作

只需将换行符更改为空,将[符号更改为换行符和符号本身。

答案 1 :(得分:0)

s.scan(/\[[^\[]+/)

为您提供以[开头的所有部分的数组。

然后,您可以处理此数组并用空格替换换行符:

s.scan(/\[[^\[]+/).map { | a | a.gsub(/\n/, ' ') }