Perl-데이터 유형

Perl은 느슨한 형식의 언어이며 프로그램에서 사용하는 동안 데이터 형식을 지정할 필요가 없습니다. Perl 인터프리터는 데이터 자체의 컨텍스트에 따라 유형을 선택합니다.

Perl에는 스칼라, 스칼라 배열 및 연관 배열이라고도하는 스칼라 해시의 세 가지 기본 데이터 유형이 있습니다. 다음은 이러한 데이터 유형에 대한 세부 정보입니다.

Sr. 아니. 유형 및 설명
1

Scalar

스칼라는 단순 변수입니다. 달러 기호 ($)가 앞에옵니다. 스칼라는 숫자, 문자열 또는 참조입니다. 참조는 실제로 변수의 주소이며 다음 장에서 볼 것입니다.

2

Arrays

배열은 0으로 시작하는 숫자 인덱스로 액세스하는 정렬 된 스칼라 목록입니다. 앞에 "at"기호 (@)가옵니다.

Hashes

해시는 키를 첨자로 사용하여 액세스하는 키 / 값 쌍의 순서가 지정되지 않은 집합입니다. 앞에 퍼센트 기호 (%)가옵니다.

숫자 리터럴

Perl은 모든 숫자를 내부적으로 부호있는 정수 또는 배정 밀도 부동 소수점 값으로 저장합니다. 숫자 리터럴은 다음 부동 소수점 또는 정수 형식으로 지정됩니다.

유형
정수 1234
음의 정수 -100
부동 소수점 2000 년
과학적 표기법 16.12E14
16 진수 0xffff
8 진법 0577

문자열 리터럴

문자열은 일련의 문자입니다. 일반적으로 작은 따옴표 ( ') 또는 큰 따옴표 ( ")로 구분 된 영숫자 값입니다. 작은 따옴표 문자열과 큰 따옴표 문자열을 사용할 수있는 UNIX 쉘 따옴표와 매우 유사합니다.

큰 따옴표로 묶인 문자열 리터럴은 변수 보간을 허용하지만 작은 따옴표로 묶인 문자열은 그렇지 않습니다. 백 슬래시로 진행되는 특정 문자는 특별한 의미를 가지며 개행 문자 (\ n) 또는 탭 (\ t)과 같이 표현하는 데 사용됩니다.

줄 바꿈 또는 다음 이스케이프 시퀀스를 큰 따옴표로 묶은 문자열에 직접 포함 할 수 있습니다.

탈출 시퀀스 의미
\\ 백 슬래시
\ ' 작은 따옴표
\ " 큰 따옴표
\ㅏ 경고 또는 벨
\비 역행 키이
\에프 양식 피드
\엔 개행
\아르 자형 캐리지 리턴
\티 수평 탭
\V 수직 탭
\ 0nn 8 진수 형식의 숫자를 만듭니다.
\ xnn 16 진수 형식의 숫자를 만듭니다.
\ cX 제어 문자, x는 임의의 문자 일 수 있습니다.
\유 다음 문자를 대문자로 바꿉니다.
\엘 다음 문자를 소문자로 강제
\유 다음 문자를 모두 대문자로 강제 적용
\엘 다음 문자를 모두 소문자로 강제 설정
\큐 다음의 영숫자가 아닌 문자 모두 백 슬래시
\이자형 \ U, \ L 또는 \ Q 끝

문자열이 작은 따옴표와 큰 따옴표로 어떻게 작동하는지 다시 살펴 보겠습니다. 여기서는 위의 표에서 언급 한 문자열 이스케이프를 사용하고 스칼라 변수를 사용하여 문자열 값을 할당합니다.

#!/usr/bin/perl

# This is case of interpolation.
$str = "Welcome to \ntutorialspoint.com!";
print "$str\n";

# This is case of non-interpolation.
$str = 'Welcome to \ntutorialspoint.com!';
print "$str\n";

# Only W will become upper case.
$str = "\uwelcome to tutorialspoint.com!";
print "$str\n";

# Whole line will become capital.
$str = "\UWelcome to tutorialspoint.com!";
print "$str\n";

# A portion of line will become capital.
$str = "Welcome to \Ututorialspoint\E.com!"; 
print "$str\n";

# Backsalash non alpha-numeric including spaces.
$str = "\QWelcome to tutorialspoint's family";
print "$str\n";

이것은 다음 결과를 생성합니다-

Welcome to
tutorialspoint.com!
Welcome to \ntutorialspoint.com!
Welcome to tutorialspoint.com!
WELCOME TO TUTORIALSPOINT.COM!
Welcome to TUTORIALSPOINT.com!
Welcome\ to\ tutorialspoint\'s\ family