Latest web development tutorials

펄 특수 변수

펄 언어는 예를 들면, 접두사로서 특별한 변수 보통 $ @ 또는 %를 정의 $ _.

많은 특별한 변수가 매우 긴 영어 이름을 가지고 운영 체제 변수 $는! $ OS_ERROR로 작성 할 수 있습니다.

이 프로그램의 특수 변수의 영어 이름을 사용하려면사용하는 영어를 추가하기 위해 머리를해야 ;.이 영어 특수 변수 서술적인.

가장 일반적으로 사용되는 특수 변수 $는 _ 변수는 기본 입력 패턴과 일치하는 내용이 포함되어 있습니다. 다음 예는 다음과 같다 :

#!/usr/bin/perl

foreach ('Google','w3big','Taobao') {
	print $_;
	print "\n";
}

위의 프로그램은 출력은 다음과 같습니다

Google
w3big
Taobao

다음의 예는 우리가 출력 $ _를 사용하지 마십시오 :

#!/usr/bin/perl

foreach ('Google','w3big','Taobao') {
	print;
	print "\n";
}

위의 프로그램은 출력은 다음과 같습니다

Google
w3big
Taobao

예를 들어, 제 1 출력 "구글"을 선택한 후 출력 "w3big"최종 출력 "Taobao의".

반복 루프에서, $에있는 문자열의 전류 루프 _ 다음 인쇄 출력을 통해. 또한 출력 변수가 _ $의 기본값으로 사용됩니다 지정하지 않고 인쇄 할 수 있습니다.

다음은 _도 펄이없는 소수의 주 $을 가정 할 것이다 장소 :

  • ORD로 () 및 INT () 함수를 포함 단안 다양한 기능, 등 추가하여 "-t"모든 파일 검사 ( "-f", "- D"), "- t"기본 작업 STDIN.
  • 이러한 인쇄 () 및 링크 해제 등의 다양한 기능의 목록 ().
  • 은 "= ~"연산자 모드를 사용하지 않는 경우에 매칭 동작 "m //", "S ///"및 "TR ///".
  • 다른 변수는 "foreach는"루프를 반복 변수 기본값을 제공하지 않는 경우.
  • 암시 적 반복 변수 그렙 ()와지도 () 함수.
  • 경우에만 유일한 조건과 조건이 ""동작 테스트의 결과이며, "동시에"는 $ _ 입력 레코드를 저장하기위한 기본 위치이다. 일어나지 않을 것 "동안"시험 조건 이외에. (니모닉 : 생략 될 수있는 특정 동작 밑줄).

특수한 변수 타입

다음 범주로 분류 될 수있는 변수의 사용 특수성에 따르면

  • 특별 글로벌 스칼라 변수입니다.

  • 특별 전역 배열 변수입니다.

  • 특별 전역 변수를 해시.

  • 글로벌 특수 파일 핸들입니다.

  • 글로벌 특수 정수입니다.

  • 특별한 변수를 정규 표현식.

  • 파일은 특별한 변수를 처리합니다.

특별 글로벌 스칼라 변수

변수의 형태로 특수 문자와 영어를 포함하는 모든 특수 스칼라 변수의 목록입니다 :

$ _ 기본 입력과 패턴이 내용을 일치.
$ ARG
$. 파일 핸들의 이전 읽기 현재 행 번호
$ NR
$ / 기본적으로 입력 레코드 분리, 개행 문자. 이 변수 미확정와 마찬가지로 파일의 끝을 읽습니다.
$의 RS
$, 출력 필드 분리
$ OFS
$ \ 출력 레코드 분리
$ ORS
$ " 동일한 $ 변수는 비슷하지만 경우 슬라이스 값의 배열 내에 삽입되어 큰 따옴표 (또는 유사한 문자열 보간)에 포함 된 문자열에 적용. 기본값은 비어 있습니다.
$ LIST_SEPARATOR
$; 구분이 때 다차원 배열 에뮬레이션을 사용했다. 기본값은 "\ 034."입니다
$ SUBSCRIPT_SEPARATOR
$ ^ L 출력 채널로 전송하는 급지 특성을 가지고. 기본값은 "\ f를"입니다.
$ FORMAT_FORMFEED
$ : 문자열이 연속 필드를 채우기 위해 파괴 될 수있는 한 후 문자의 현재 세트는 형식 (^로 시작). 기본값은 "\ n" "입니다.
$의 FORMAT_LINE_BREAK_CHARACTERS
$ ^ 저장하는 다양한 데이터 포맷을 인쇄하기 전에
$ ACCUMULATOR
$ # 당신은 디지털 기본 디지털 출력 형식 (구식) 인쇄 할 때.
$ OFMT
$? 외부 명령의 상태로 돌아
$ CHILD_ERROR
$! 이 변수의 숫자 값의 errno의 값, 문자열 값은 해당 시스템 오류 문자열입니다
$ OS_ERROR 또는 $ ERRNO
$ @ 비어있는 경우, 평가 명령 오류 메시지가 성공적으로 완료된 최종 평가 명령을 의미
$ EVAL_ERROR
$$ 펄 스크립트는 현재의 프로세스 ID를 실행합니다
$ PROCESS_ID 또는 $ PID
$ < 현재 프로세스의 실제 가입자 번호
$ REAL_USER_ID 또는 $의 UID
$> 현재 프로세스의 유효 사용자 수
$ EFFECTIVE_USER_ID 또는 $ EUID
$ ( 사용자 그룹의 현재 프로세스 실제 개수
$ REAL_GROUP_ID 또는 $ GID
$) 현재 프로세스의 유효 사용자 그룹 번호
$ EFFECTIVE_GROUP_ID 또는 $ EGID
$ 0 파일 이름은 스크립트가 실행될 포함
$ PROGRAM_NAME
$의 [ 어레이 배열의 첫 번째 요소의 인덱스, 기본값은 0이다.
$] 펄 버전 번호
$ PERL_VERSION
$ ^ D 디버그 플래그의 값
$ 디버깅
$ ^ E 비 UNIX에서 운영 체제 환경은 오류 정보를 확장
$ EXTENDED_OS_ERROR
$ ^ F 상기 번들의 최대 파일 식별자 값
$ SYSTEM_FD_MAX
$ ^ H 컴파일러 구문 확인 상태에 의해 활성화
$ ^ I 내장 에디터의 제어 값
$ INPLACE_EDIT
$ ^ M 사이즈 스페어 메모리 풀
$ ^ O 운영 체제 이름
$ OSNAME
$ ^ P 현재 디버거 내부 변수 값을 지정합니다
$ PERLDB
$ ^ T 새로운 세기의 시작부터, 초의 속도는 시간이 부족하기 시작
$ BASETIME
$ ^ W 경고 스위치의 전류 값
$ 경고
$ ^ X 펄 바이너리 실행 코드 명
$ EXECUTABLE_NAME
$ ARGV 때 기본 파일 핸들에서 읽은 현재 파일 이름

특별 전역 배열 변수

@ARGV 스크립트 명령 행 인수 목록
@INC 이 모듈 디렉토리 목록을 가져올 때 검색 할
@F 명령 라인 어레이를 입력

특별 전역 변수를 해시

% INC

키워드가 파일 이름에 포함 INC가 DO로 모든 파일을 포함 % 해시 또는 문장을 요구 값은 파일의 경로

%의 ENV

현재의 환경 변수를 포함

% SIG

어떻게 처리하는 신호 목록

글로벌 특수 파일 핸들

ARGV

모든 파일 이름 배열 변수 @ARGV를 통해 특수 파일 핸들

STDERR

표준 출력 핸들 오류

STDIN

표준 입력 핸들

STDOUT

표준 출력 핸들

DATA

특수 파일 핸들 참조 후 스크립트의 내용이 포함 된 파일의 모든 콘텐츠 __END__ 플래그입니다. 또는 콘텐츠 파일의 모든에 대한 참조가 __ DATA__만큼 동일한 패킷 데이터를 읽고으로, 후 __DATA__ 플래그가 포함되어 있습니다.

_ (밑줄)

자세한 내용은 특수 파일 핸들 캐시 파일 (fstat를, 통계 및 lstat는).

글로벌 특별한 일정

__END__

스크립트의 논리적 끝, 텍스트가 후에 무시했다.

__FILE__

현재 파일 이름

__LINE__

현재 행 번호

__PACKAGE__

현재 패키지 이름, 기본 패키지 이름은 기본이다.

정규식 특수 변수

$ N

n 번째 문자열과 일치하는 최종 패턴을 포함

$ &

이전 성공 패턴과 일치하는 문자열

$ MATCH

$`

이전 콘텐츠의 성공 일치 마지막 문자열

$ PREMATCH

$ '

문자열 후 콘텐츠 마지막으로 성공한 경기

$의 POSTMATCH

$ +

그리고 마지막 정규 표현식 검색 마지막 괄호 매칭 형식입니다. 예를 들면 :

/Version: (.*)|Revision: (.*)/ && ($rev = $+);

$ LAST_PAREN_MATCH

특수 변수를 처리 - 파일

$ |

각 함수 호출 기록 또는 인쇄 후 제로로 설정하면, 자동으로 함수 fflush는이 기록 된 내용이 파일을 작성합니다 호출

$ OUTPUT_AUTOFLUSH

$ %의

현재 출력 페이지 번호

$ FORMAT_PAGE_NUMBER

$ =

현재 페이지 길이. 기본값은 60입니다.

$ FORMAT_LINES_PER_PAGE

$ -

나머지 라인의 현재 페이지 번호

$ FORMAT_LINES_LEFT

$ ~

보고서 출력 형식의 현재 이름입니다. 디폴트 값은 파일 핸들의 이름이다.

$ FORMAT_NAME

$ ^

현재 보고서 출력 테이블 이름 헤더 형식입니다. 기본값은 접미사 "_TOP"파일 핸들 이름이다.

$ FORMAT_TOP_NAME