mhz*_*mhz 3 ruby arrays dynamic
我还是红宝石的新手.我的阵列由于某种原因没有出现.我在irb中测试了我的代码逻辑,它似乎工作正常,但是当我在if语句中使用它时,它会打破标题中的错误.
$s = []
i = 0
File.open("test.log").each do | l |
if l =~ /(m.)/
s << [$1]
i=i+1
end
if l =~ /(p.)/
s[i-1] << $1
end
end
s.each do |g|
p g
end
Run Code Online (Sandbox Code Playgroud)
一个示例test.log:
aaaaaaaaaaaaaaaaaa
m1
ggg
p1
p2
p3
p4
oooooooooooooo
m2
p1
p2
p3
p4
p5
gggggggggggggg
m3
p1
kkkkkkkkkkkk
m4
m5
llllllllllllll
Run Code Online (Sandbox Code Playgroud)
我怎么能得到像这样的阵列?
[[m1,p1,p2,p3,p4], [m2,p1,p2,p3,p4,p5], [m3,p1], [m4], [m5]]
Run Code Online (Sandbox Code Playgroud)