学习笔记 Perl基本语法

开发 架构
Perl语言有很多值得学习的地方,你对Perl语法是否熟悉,这里和大家简单分享一下,希望本文的介绍能让你有所收获。

本文和大家重点讨论一下Perl基本语法,主要有标量,数字,字符串等内容,相信通过本文的学习你对Perl基本语法有一定的认识。

Perl基本语法

最近在研究openSUSE的OBS(编译系统),其中很多部分用到Perl。而且自己也感到有必要学点Perl,当有一点其他程序语言的基础,再学一门语言,入门还是非常简单的。Perl在GNU/Linux上应用如此广泛,很多地方替换shell脚本会更灵活优秀高效,学习它也很有必要。本文是学习时的笔记,多是语法使用示例,没有什么说明。拟研究OBS时,依据某个应用再写一篇Perl应用教程。

标量

标量是Perl中最简单的数据类型。大多数的标量是数字(如255或3.25e20)或者字符串(如hello或者盖茨堡地址)。

数字

perl中所有数字内部的格式都是双精度浮点数。

Perl基本语法之浮点数

1.25
255.000
255.0
7.25e45#7.25x10的45次方(一个大整数)
-6.5e24#-6.5x10的24次方(一个大的负数)
-12e-24#--12x10的-24次方(很小的负数)
-1.2E-23#指数符号可以大写(E)

整数

0
2001
-40
255
61298040283768
其中61298040283768也可以写作:
61_298_040_283_768

Perl基本语法之非十进制整数

0377#八进制数字377,等同于十进制数字255
0xff#十六进制数字FF,等同于十进制数字255
0b11111111#等同于十进制数字255
可以用下划线表示:

0x1377_0B77
0x50_65_72_7C

数字操作符

2+3#2+3,5
5.1-2.4#5.1-2.4,2.7
3*12#3*12,36
14/2#14/2,7
10.2/0.3#10.2/0.3,34
10/3#通常是浮点除,3.33333......

Perl基本语法之字符串

◆单引号字符串

'fred'#四个字符:f,r,e,d
''#空字符(没有字符)
'hello\n'
'\'\\'#单引号(')跟着反斜线(\)字符串
单引号中的"\n"不会被当作换行符来处理。

◆双引号字符串

"barney"#等同于'barney'
"helloworld\n"#helloworld,换行

Perl基本语法之字符串操作符

◆链接操作符"."

"hello"."world"#同于"helloworld"
"hello".''."world"#同于"helloworld"
'helloworld'."\n"#同于"helloworld\n"

◆重复操作符"x"

"fred"x3#"fredfredfred"
5x4#等于"5"x4,"5555"

数字和字符串之间的自动转换

大多数情况下,Perl将在需要的时候自动在数字和字符串之间转换。它怎样知道什么时候需要字符串,什么时候需要数字呢?这完全依赖于标量值之间的的操作符。如果操作符(如+)需要数字,Perl将把操作数当作数字看待。如果操作符需要字符串(如.),Perl将把操作数当作字符串看待。不必担心数字和字符串的区别;使用恰当的操作符,Perl将为你做剩下的事。

"12"*"3"#*操作符需要数字,所以结果为36
"12fred34"*"3"#结果仍然是36,后面的非数字部分和前面的空格都过滤掉。
"Z".5*7#等于"Z".35,或"Z35"
 

【编辑推荐】

  1. Perl语法 解析Perl变量使用
  2. 解析Perl文件系统应用中函数的语法
  3. 解析四大Perl操作符用法
  4. Perl格式化输出语法大全
  5. Perl标量转换函数用法指南
责任编辑:佚名 来源: csdn.net
相关推荐

2010-07-21 14:18:27

Perl函数

2010-07-21 13:27:06

Perl模式匹配

2010-07-13 12:50:47

Perl变量

2010-07-21 14:08:28

Perl命令行

2010-07-15 18:04:20

Perl模式

2010-07-13 13:15:17

Perl

2010-07-16 17:38:12

Perl包

2010-07-16 12:50:45

Perl语言

2010-07-26 10:51:26

Perl模式匹配

2010-07-19 09:08:38

Perl模块

2010-07-15 10:07:29

Perl指令

2010-07-13 15:43:57

Perl语言

2010-07-15 11:29:25

Perl格式化输出

2010-07-20 14:41:55

Perl语法

2011-06-15 15:55:36

PHP

2010-07-20 10:58:39

Perl脚本

2010-07-19 11:07:13

Perl控制结构

2010-07-19 16:47:54

Perl

2010-07-14 17:11:57

Perl文件

2010-07-23 13:16:07

Perl
点赞
收藏

51CTO技术栈公众号