2011-01-17 2 views
0

나는 줄패턴을 찾은 후 행을 읽는 방법은 무엇입니까?

I 파일에서 검색을하고 첫 번째 줄을 발견 한 후 ID를 검색하는 것입니다 내가하고 싶은
CHANNEL(SYSTEM.DEF.SVRCONN) CHLTYPE(SVRCONN) 
id=3 

있어요.

open(CHECKFILE8, "$file"); 
while (<CHECKFILE8>) {    #while loop to loop through each line in the file 
    chomp;       #take out each line by line 
    $datavalue = $_;    #store into var , $datavalue. 
    $datavalue =~ s/^\s+//;  #Remove multiple spaces and change to 1 space from the front 
    $datavalue =~ s/\s+$//;  #Remove multiple spaces and change to 1 space from the back 
    $datavalue =~ s/[ \t]+/ /g; #remove multiple "tabs" and replace with 1 space 
    if ($datavalue eq "CHANNEL(SYSTEM.DEF.SVRCONN) CHLTYPE(SVRCONN)") { 
     # HOW TO READ THE NEXT LINE? 
    } 
} 

답변

1

당신은 다른 모든 라인을 읽고 같은 방법 : 식 <CHECKFILE8>와. 예를 들어 :

my $nextline = <CHECKFILE8>; 

당신은 bareword는 식별자를 통해 파일 핸들을 여는 펄 다소 구식입니다,하지만 알고 있어야합니다. 당신이 바로, use strict을 사용하는

open my $checkfile8, '<', $file or die "Can't open $file: $!"; 
while (<$checkfile8>) { ... } 

: 그것은 펄 당신을 위해 어휘 범위 변수에 파일 핸들을 만들 수 있도록 일반적으로 안전하고 관용적인가?

+0

sry dun이 (가) 찾으세요? perl이 "my $ nextline = "을 어떻게 알 수 있습니까? 다음 줄이야? – Dayzza

+0

ok 내가 시험해보고 난 후에 그것을 얻는다라고 생각해라! 고마워 선생님! :디 – Dayzza

관련 문제