我是perl语言的初学者,我遇到了上述问题,并希望寻求帮助。非常感谢所有的帮助。
给定初始文件内容:
Apple
Pear
Apple
Pear
想要输出:
Apple
Pear
Grape
Apple
Pear
Grape
每次输出pear之后,都希望将Grape添加到输出中。
答案 0 :(得分:3)
perl -pe '$_ .= "Grape\n" if /Pear/' file
答案 1 :(得分:1)
仅因为它比mpapec的解决方案短4个字符;)
perl -pe 's/Pear\K/\nGrape/' file1.txt
如果您真的想学习,请尝试阅读:How do I change, delete, or insert a line in a file, or append to the beginning of a file?
答案 2 :(得分:1)
感谢各位提供帮助的人,我试了一下,我以某种方式通过以下方式解决了这个问题: 假设我的文件在test1中。
open(DATA,"<test1") or die "No test1 file";
while($data = <DATA>){
if($data =~ /Pear/){
$data = $data . "Grape\n";
}
print "$data";
}