1、环境搭建
—— 解释器 / 编译器
Perl 在 Window 平台上有 ActiveStatePerl 和 Strawberry Perl 编译器。
ActiveState Perl和 Strawberry Perl最大的区别是 Strawberry Perl 里面有多包含一些 CPAN 里的模块,
所以Strawberry Perl 下载的安装文件有 80多M, 而ActiveState Perl 只有20M 左右
地址:
https://strawberryperl.com/
安装完成之后使用命令进行检查:
perl -v / perl -version
—— 开发工具
编写Perl程序好像并没有专门的IDE工具,所以按照以往的Java开发工具,直接上IDEA了
打开插件库,里面搜Perl是有这样一个插件支持的:
之后我们需要配置Perl解释器到IDEA中,在编写Perl程序文件时,IDEA会提示SDK未找到,根据提示让IDEA引导我们去配置Perl
Perl程序文件的后缀名称为xxx.pl
点击添加系统Perl之后,IDEA会自动找到我们之前下载安装好的Strawberry Perl
IDEA还会有一些编写帮助提示,是否使用严格语法,和是否完全提示报错警告
2、基础语法
——1、linux环境开发的注意事项
Linux操作系统下Perl程序文件首行必须声明调用的执行程序
#!/usr/bin/perl
另外Perl程序文件实际上是一个可执行的脚本文件,如同SHELL一样
在Linux编写完成之后需要对该文件进行一个可执行权限的赋予
chmod 0777 xxx.pl
执行perl脚本
./xxx.pl
——2、简单的示例
在Windows下IDEA中只要配置好解释器,就可以直接编写程序即可
use strict; use warnings; use warnings FATAL => 'all'; # 输出 "Hello, World" print "Hello, world\n";
IDEA似乎没有提供专门的Perl程序运行功能,所以这里我使用IDEA提供的终端窗口进行Perl程序执行
——3、Perl的注释
单行注释类似MySQL的访问工具里的SQL编辑器一样,使用井号即可实现单行注释
# 这是Perl的单行注释
如果是使用多行注释这需要这样:
=pod 这是一个多行注释 这是一个多行注释 这是一个多行注释 这是一个多行注释 =cut
在IDEA的编辑区域看起来很像Java的JavaDoc注释
/** * 这是Java的多行注释 文档注释 * 这是Java的多行注释 文档注释 * 这是Java的多行注释 文档注释 */
——4、空格的字符串
执行命令时,命令参数会忽略过多的空格字符
如果是输出的字符串中带有的空格,Perl则会原封不动的输出
use strict; use warnings; use warnings FATAL => 'all'; # 输出 "Hello, World" print "Hello, world\n"; # 也可以使用括号表示 print ("Hello, world\n");
——5、警告提示
警告是对程序存在的潜在异常进行输出提示
Perl原始的警告提示是使用命令参数实现:
-w
w即warnings警告的缩写
在linux环境下,脚本的首位声明加上该参数即可
#!/usr/bin/perl -w
如果是windows,则是
perl -w xxx.pl
在perl5.6版本中,还支持类似JS语法的声明(即一开始的IDEA帮助提示)
use warnings;
查看更为详细的问题描述,可以再声明一句
use diagnostics;
——6、字符输出问题
在perl中支持双引号和单引号两种字符修饰的处理,但是会有区别:
$a = 10; print "a = $a\n"; print 'a = $a\n';
Perl双引号和单引号的区别: 双引号可以正常解析一些转义字符与变量,而单引号无法解析会原样输出。
a = 10 a = $a\n
对单个的特殊字符的输出显示可以使用\实现
use strict; use warnings FATAL => 'all'; use diagnostics; $a = 10; print "\$a = $a\n";
——7、文档输出
$b = <<"EOF"; 这是一个 Here 文档实例,使用双引号。 可以在这输如字符串和变量。 例如:a = $a EOF