如果找到打印整行,Perl正则表达式匹配

时间:2014-02-25 07:05:07

标签: regex perl

我有很多行

  Hi i need to work for
  This place
  Which adds me
  More value in this
   wolrd
  Where i can explore my technical skills

我正在搜索添加me =~ /adds/

的字词

如果匹配发现我必须打印整行“哪个加我”

如何在perl中执行此操作

6 个答案:

答案 0 :(得分:2)

perl -lne 'print if(/\badds\b/)' your_file

测试here

答案 1 :(得分:1)

使用perl命令:

perl -ne '/adds/ && print $_' file

<强>输出:

  Which adds me
script.pl中的

while (<>) {
    print if (/adds/);
}

然后调用脚本:

perl script.pl file

答案 2 :(得分:1)

while (<STDIN>) {
  if($_ =~ m/adds me/) { ##this worked for me
    print $_;}
}

答案 3 :(得分:0)

如果它在文件中

open(FH,'filename");

while(<FH>){

    if($_=~/adds/){
        print $_;
    }
}

答案 4 :(得分:0)

while (<FILE>) {

   if (/adds/) { print $_;}
}

答案 5 :(得分:0)

我想知道是否可以使用-p选项解决问题。最后我发现了这个oneliner

perl -pe 'goto LINE unless /adds/;' filename