我想使用perl中的文件处理删除txt文件中的部分行

时间:2013-04-06 05:26:01

标签: perl file-handling

如果输入文件中的行是:

 abc !asdas 
 abc, sadasda
 abc.

输出文件应该是:

 abc
 abc,
 abc.

2 个答案:

答案 0 :(得分:1)

这是一种方法。如果您的数据有任何不同,您可能需要调整split。它现在所做的就是在空间上进行分割。

#!/usr/bin/perl

use strict;
use warnings;

open (my $in, '<', "in.txt") or die $!;
open (my $out, '>', "out.txt") or die $!;

while (<$in>) {
    my ($val) = split ' ';
    print $out "$val\n";
}

close ($in);
close ($out);

如果我必须这样做,这就是我将从命令行做的事情:

awk '{ print $1 }' in.txt > out.txt

答案 1 :(得分:0)

file.txt包含帖子中的文字。

Perl脚本:

use strict;
open(IN, 'file.txt');
while(<IN>){
   chomp;
   my(@elems) = split(/\s+/, $_);
   print $elems[0] . "\n";
}