2014-02-25 59 views
0

我有很多行若發現打印全線

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的正則表達式匹配

如何做到這一點在Perl

+0

這些線是在文件???? – Ram

回答

0

我不知道是否有一個可以使用-p選項解決問題測試here

1

隨着perl命令:

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

輸出:

Which adds me 

在script.pl:

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

然後調用腳本:

perl script.pl file 
+0

如何在不使用oneliner的情況下執行此操作@vanda – user3349964

+0

@ user3349964 look @ script version。 –

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

如果在文件

open(FH,'filename"); 

while(<FH>){ 

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

這個函數做什麼? @Vijay – user3349964

+0

你在說什麼功能? – Vijay

+2

+1對於'\ b''s和ideone.com –

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

。最後,我發現這oneliner

perl -pe 'goto LINE unless /adds/;' filename 
0
while (<FILE>) { 

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

請解釋更好的答案 –