LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1214|回复: 5

关于perl处理文本的问题高手请指点,不胜感激,谢谢

[复制链接]
发表于 2002-11-4 20:46:11 | 显示全部楼层 |阅读模式
请问如何在文档中某指定语句下插入句子?如:我有个文档叫mylove,内容如下
I love linux
I love perl
and I love $$

我现在想把I love MM插入I love perl 下成为
I love linux
I love perl
I love MM
and I love $$
请问该如何操作?
发表于 2002-11-5 09:05:25 | 显示全部楼层
首先要打开这个文本文件open (OUT,“”"路径/文件名")
然后读其中的每行文本($_)
如果匹配到“”"I love perl"这行文本
然后就print OUT "I love MM\n"
然后退出读文本的循环
最后关闭文本文件close (OUT)即可
 楼主| 发表于 2002-11-5 12:00:02 | 显示全部楼层
谢谢,回去就试试
发表于 2002-11-5 13:53:58 | 显示全部楼层
#!/usr/bin/perl

my $file= "./love.txt";
my $filemm= "./lovemm.txt";
open (IN,"$file");
open (OUT,">$filemm");
while (<IN>) {
        my $line = $_;
        print OUT $line;
        chomp($line);
        if ($line =~/I love perl/) {
                print OUT "I love MM\n";
        }
}
close OUT;
close IN;
 楼主| 发表于 2002-11-5 17:58:08 | 显示全部楼层
thanks very much,and i will try it now
发表于 2002-11-6 12:36:59 | 显示全部楼层
看看用shell的高效办法:
只要运行一条命令
sed '/perl/ a\I love MM' mylove>mylove.new
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表