У меня есть текстовый файл в формате:
04-01-2010 13:25
Lorem Ipsum...
03-28-2010 15:21
Lorem Ipsum...
и т.д.
И я хочу изменить формат даты так, чтобы он выглядел так:
2010-04-01 13:25
Lorem Ipsum...
2010-03-28 15:21
Lorem Ipsum...
и т.д.
Проблема в том, что я не могу передать регулярное выражение непосредственно в процесс, и я не уверен, как еще это сделать. И код, похоже, не записывает в файл вообще. Вот мой код:
def dateFix(dateLine)
dateLine = dateLine.split('-')
newDate = dateLine.slice(2), dateLine.slice(0), dateLine.slice(1)
newDate = newDate.join('-')
end
@reg = /\b\d\d-\d\d-\d\d\d\d\b/
File.open('some_file.txt', "r+") { |file|
file.each_line { |line|
date = line if line == @reg
if date
file.puts line.gsub(date, dateFix(date))
end
}
}