2014-10-20 2 views
0

줄에서 검색 문자열을 찾으면 전체 줄을 반환하고 싶습니다.검색 문자열을 찾을 때 전체 줄 반환

내가 인쇄 할 때 필요한 대부분을 얻고 있지만 10 자 정도가 부족합니다. 나는 줄과 문자열의 시작과 약 10자를 얻는다. 여기

내 코드입니다 (미리 감사) :

use strict; 
use warnings; 

my $calls_dir = "Ask/"; 
opendir(my $search_dir, $calls_dir) or die "$!\n"; 
my @files = grep /\.txt$/i, readdir $search_dir; 
closedir $search_dir; 
print "Got ", scalar @files, " files\n"; 

#my %seen =(); 
foreach my $file (@files) { 
    my %seen =(); 
    my $current_file = $calls_dir . $file; 
    open my $FILE, '<', $current_file or die "$file: $!\n"; 


    while (<$FILE>) { 
     chomp; 
     if (/^*(.*)Contact\s*(.*)\r?$/i) { 
      $seen{$1} = 1; 

      foreach my $addr (sort keys %seen) { 

       print "\n"; 
       print $file; 
       print "\n"; 
       print "[$addr]\n"; 
       print "\n"; 
       print "\n"; 
      } 
     } 
    } 
    close $FILE; 
} 
+0

후 일부 입력 및 일부 출력 – vks

+1

찾고있는 줄 전체를 포함/^ * $. \\ "$ _ \ n"; $ _ \ n ";을 실행하십시오. 'if 문 다음에 – arco444

+0

대단히 고마워! – tlialin

답변

0

$이 _ 당신이`를 참조하는 경우는

관련 문제