我是Ruby的新手。我有一个示例(输入文本),例如:
Message:
update attributes in file and commit version
----
Modified
我需要在“消息”标签之后的行中插入一行。请注意,此行可以使用“消息”关闭并关闭,例如
Message:update attributes in file and commit version
我试过这样:
if line =~/Message/
但当然它不会搜索下一行。
谁能帮助我如何捕捉标签“消息”和“---”之间的行如果你知道一些例子,请输入一个链接
更新:整个代码
require 'csv'
data = []
File.foreach("new7.txt") do |line|
line.chomp!
if line =~ /Revision/
data.push [line]
elsif line =~ /Author/
if data.last and not data.last[1]
data.last[1] = line
else
data.push [nil, line]
end
elsif line=~/^Message:(.*)^-/m
if data.last and not data.last[2]
data.last[2] = line
else
data.push [nil, nil, line]
end
end
end
CSV.open('new1.csv', 'w') do |csv|
data.each do |record|
csv << record
end
enter code here
输入文件:
Revision: 37407
Author: imakarov
Date: 21 июня 2013 г. 10:23:28
Message:my infomation
dmitry name
输出 csv 文件: