【发布时间】:2015-06-25 05:35:30
【问题描述】:
1) 我有一个文本文件。该文件包含一个需要用多行替换的 STRING,这些行是数组的元素。
文件内容:
line 1
line 2
line 3
STRING
line 4
...
2.)我有一个数组
@array = qw (ele1 ele2 ele3);
这个数组可以有 2 个或更多元素。
3.)我想打开文件,用下面的伪代码替换字符串:
s/STRING/@array/;
并将结果写入新文件。
4.) 带有结果的新文件应如下所示:
line 1
line 2
line 3
ele1
ele2
ele3
line 4
...
这里有一段伪代码:
open (FILE "< file.txt");
open (OUTPUT "> new.txt");
@array=qw(ele1 ele2 ele3);
for $line (<FILE>) {
s/STRING/@array/;
print OUTPUT "$line\n";
}
close FILE;
close OUTPUT;
关于如何使用替换将数组元素插入此文件的任何建议?
我不是在寻找基于 sed、awk、cat 或 Unix shell 工具的解决方案。
【问题讨论】:
标签: arrays perl data-structures insert-update perl-data-structures