$/=""는 Perl에게 단락을 읽도록 지시하는 데 사용됩니다. 단락은 두 개 이상의 줄 바꿈으로 구성된 텍스트 블록입니다. 이는 두 줄로 구성된 텍스트 블록만 읽는 "nn"으로 설정하는 것과 다릅니다. 이 경우 문제가 발생합니다. "textnnnn"과 같이 연속적인 빈 줄이 있는 경우 이를 한 문단("text") 또는 두 문단("text" ", 두 개의 줄 바꿈이 뒤따르는 것으로 해석할 수 있습니다. 빈 문단 뒤에 빈 두 줄이 옵니다.)
두 번째 설명은 텍스트를 읽을 때 거의 쓸모가 없습니다. 읽고 있는 단락에 위와 같은 상황이 있는 경우 "빈" 단락을 필터링할 필요가 없습니다.
$/="nn";
while(){
chomp;
nextunlesslength;#빈 세그먼트 건너뛰기
# ...
}
$/를 undef로 설정할 수 있습니다. undef는 두 개 이상의 줄 바꿈이 뒤따르는 단락을 읽는 데 사용됩니다: undef$/;
while (){
chomp;
#...
}
전체 파일 읽기
$ 기타 흥미로운 값 for /는 undef입니다. 이 값으로 설정하면 읽기 명령이 파일의 나머지 부분을 문자열로 반환한다고 Perl에 알립니다.
undef$/;
$file=;
$/ 값을 변경하면 다음 읽기 작업뿐만 아니라 모든 후속 읽기 작업에 영향을 미치기 때문입니다. 일반적으로 이 작업을 로컬 작업으로 제한하려고 합니다. 다음 예를 통해 파일 핸들의 내용을 문자열로 읽을 수 있습니다.
{
local$/=undef;
$file=;
}
기억하세요: Perl 변수는 매우 긴 문자열을 읽을 수 있습니다. 파일 크기는 가상 메모리 제한을 초과할 수 없지만 가능한 한 많은 데이터를 읽을 수 있습니다.
위 내용은 Perl의 전형적인 사용법입니다. 해당 문단의 내용을 읽어보시면 더 많은 관련 글을 보실 수 있으니 PHP 중국어 홈페이지(www.php.cn)를 주목해주세요!