펄 데이터 유형


Perl은 약한 유형의 언어이므로 변수를 입력할 필요가 없으며 Perl 인터프리터는 상황에 따라 자동으로 일치하는 유형을 선택합니다.

Perl에는 스칼라, 배열, 해시의 세 가지 기본 데이터 유형이 있습니다. 다음은 세 가지 데이터 유형에 대한 설명입니다.

일련번호유형 및 설명
1스칼라
序号类型和描述
1标量

标量是Perl语言中最简单的一种数据类型。这种数据类型的变量可以是数字,字符串,浮点数,不作严格的区分。在使用时在变量的名字前面加上一个"$",表示是标量。例如:

$myfirst=123;     #数字123 

$mysecond="123";   #字符串123 
2数组

数组变量以字符"@"开头,索引从0开始,如:@arr=(1,2,3)

@arr=(1,2,3)
3哈希

哈希是一个无序的 key/value 对集合。可以使用键作为下标获取值。哈希变量以字符"%"开头。

%h=('a'=>1,'b'=>2);
스칼라는 Perl 언어에서 가장 간단한 데이터 유형입니다. 이 데이터 유형의 변수는 숫자, 문자열, 부동 소수점 숫자일 수 있으며 엄격한 구별은 이루어지지 않습니다. 사용할 때 변수 이름 앞에 "$"를 추가하여 스칼라임을 나타냅니다. 예: <🎜>
$x = 12345;
if (1217 + 116 == 1333) {
	# 执行代码语句块
}
2배열<🎜>배열 변수는 "@" 문자로 시작하고 0부터 시작하는 인덱스: @arr=(1,2,3)<🎜>
$var1 = 047;    # 等于十进制的39
$var2 = 0x1f;   # 等于十进制的31
3Hash< /strong> <🎜>해시는 순서가 지정되지 않은 키/값 쌍의 모음입니다. 값은 키를 아래 첨자로 사용하여 얻을 수 있습니다. 해시 변수는 "%" 문자로 시작합니다. <🎜>아아아앙

숫자 리터럴

1. 정수

PERL은 실제로 컴퓨터의 부동 소수점 레지스터에 정수를 저장하므로 실제로는 부동 소수점 숫자로 처리됩니다.

대부분의 컴퓨터에서 부동 소수점 레지스터는 약 16자리를 저장할 수 있으며, 이보다 긴 숫자는 버려집니다. 정수는 실제로 부동 소수점 숫자의 특별한 경우입니다.

정수 변수 및 연산:

#!/usr/bin/perl 

$value = 9.01e+21 + 0.01 - 9.01e+21;
print ("第一个值为:", $value, "\n");
$value = 9.01e+21 - 9.01e+21 + 0.01;
print ("第二个值为:", $value, "\n");

8진수 및 16진수: 8진수는 0으로 시작하고 16진수는 0x로 시작합니다. 예:

第一个值为:0
第二个值为:0.01

2. 부동 소수점 숫자

11.4, -0.3, .3, 3., 54.1e+02, 5.41e03과 같은 부동 소수점 숫자 데이터.

부동 소수점 레지스터는 일반적으로 부동 소수점 숫자를 정확하게 저장할 수 없으므로 오류가 발생하므로 연산 및 비교에 특별한 주의를 기울여야 합니다. 지수의 범위는 일반적으로 -309에서 +308입니다. 예:

#!/usr/bin/perl 

$var='这是一个使用

多行字符串文本

的例子';

print($var);

위 프로그램을 실행하면 출력 결과는 다음과 같습니다.

这是一个使用

多行字符串文本

的例子

3. 문자열

Perl의 문자열은 스칼라로 표시되며 정의 방법은 다음과 같습니다. c와 매우 유사하지만 Perl에서는 문자열이 0으로 끝나지 않습니다.

Perl 큰따옴표와 작은따옴표의 차이점: 큰따옴표는 일부 이스케이프 문자와 변수를 정상적으로 구문 분석할 수 있는 반면, 작은따옴표는 구문 분석할 수 없으며 그대로 출력됩니다.

그러나 아래와 같이 작은따옴표로 정의된 여러 줄의 텍스트를 사용할 수 있습니다.

#!/usr/bin/perl

# 换行 \n 位于双引号内,有效
$str = "php中文网  \nwww.php.cn";
print "$str\n";

# 换行 \n 位于单引号内,无效
$str = 'php中文网  \nwww.php.cn';
print "$str\n";

# 只有 R 会转换为大写
$str = "\uphp";
print "$str\n";

# 所有的字母都会转换为大写
$str = "\Uphp";
print "$str\n";

# 指定部分会转换为大写
$str = "Welcome to \Uphp\E.com!"; 
print "$str\n";

# 将到\E为止的非单词(non-word)字符加上反斜线
$str = "\QWelcome to php's family";
print "$str\n";

위 프로그램을 실행하면 출력 결과는 다음과 같습니다.

rrreee

일부 변환은 일반적으로 사용됩니다. Perl 언어에서 사용되는 의미 문자는 다음 표와 같습니다.

转义字符含义
\反斜线
'单引号
"双引号
a系统响铃
b退格
f换页符
n换行
r回车
t水平制表符
v垂直制表符
nn创建八进制格式的数字
xnn创建十六进制格式的数字
cX控制字符,x可以是任何字符
u强制下一个字符为大写
l强制下一个字符为小写
U强制将所有字符转换为大写
L强制将所有的字符转换为小写
Q将到E为止的非单词(non-word)字符加上反斜线
E结束L、U、Q

예시

다음으로 작은따옴표, 큰따옴표 및 이스케이프 문자의 사용을 자세히 살펴보겠습니다. :

rrreee

위 예제의 실행 출력은 다음과 같습니다.