专家指导Perl学习笔记

本文和大家重点讨论一下Perl学习笔记,Perl是一种能完成任务的语言。从一开始,Perl就设计成可以把简单工作简单化,同时又不失去处理困难问题能力的语言。

 Perl学习笔记

一、Perl基础

1.常用命令
1.1perl–v显示Perl版本,测试Perl是否安装
1.2perldoc–tf<函数名>查找函数信息
1.3perldoc–q查找FAQ
1.4perl是一种解释型语言,不需要编译;Python是虚拟机语言,要编译。

二、Perl的构件:数据,字符串

1.转义字符用\表示
2.qq,q运算符,使用非字符或数字作为限定符
3.标题变量$
4.chomp删除换行符
5.输入设备
6.格式化字符串直接在字符串中引用标量

三、Perl控制程序流

1.空undef
2.last,redo,next都可以跟标号
3.exit0正常退出程序

四、Perl列表/数组

1.qw运算符声明列表
2.定义范围1..20
3.定义数组@
4.引用数组元素$[index]
5.查找数组大小$size=@array
6.$#foo***一个元素的索引号
7.localtime返回一个表示当前时间的时间元素列表
8.for,foreach$var(@array)
9.split函数
10.join函数
11.sort给数组排序
12.<=>飞船运算符
13.scalar函数,强制转换为一个标量放入标量上下文,返回放入的数量
scalar@_;

五、Perl文件操作

1.die函数
2.$!用来在die函数中返回操作系统的出错消息
3.warn
4.defined<>undef
5.$_foreach读出的系统变量
例:
open(MYFILE,"c:/manifest.mf")||die"err:$!";#p#

六、Perl正则表达式

1.正则表达式中的元字符:
${}#^@|?.+*[\
2.将模式串括起来的字符可以是任意的元字符;除非使用非斜扛分隔符,否则可以不使用m。
3.用[]表示字符类
4.通配符{最少出现次数,***出现次数
5.特殊字符类
\w单词字符
\W非单词字符
\d数字
\D非数字
\s空白字符
\S非空白字符
6.选择|
7.位置通配符
^一行开始
$一行结尾
8.替换
s/$searchpatten/replacement/;
9.修饰符
/g重复多次匹配
/I忽略大小写

七、Perl哈希结构

1.用%声明%hash=("k1","v1","k2","v2");
2.用=>分隔键和值声明%hash2=("k1"=>"v1","k2"=>"v2");
3.引用哈希值$hash{"k1"}
4.用keys检索哈希表的关键字
foreach(keys%hash){
print"$_\n";
}
5.用values检索哈希表中所有值
foreach(values%hash){
print"$_\n";
}
5.reverse%hash转换成列表,键值对换
6.哈希合并%h={%h1,%h2}
7.测试哈希值是否存在if(exists$hash(keyval))
8.删除哈希值delete$hash(keyval)
9.删除所有键值%hash={}
10.查找数组中的所有唯一元素

八、Perl函数

1.声明函数
subsubFun{
for($i=0;$i<10;$i++){
print$i;
}
Return(true);
}
2.参数
@_表示隐含参数列表
$_[2]表示第二个参数
($hit,$bats)=@_
例:
subparamFun{
($a,$b)=@_;
print"\na=$a";
print"\nb=$b";
}
3.声明函数内变量
My$y=500;

九、Perl中其它函数和运算符

1.indexstring,substring
2.rindexstring,substring
3.substrstring,offset,length
可用于替换字符串
4.tr/searchlist/replacelist/转换运算符
tr/a-z/A-Z/;把大写转换为小写
$num=tr/0-9//;计算数字的数量
5.=~运算符
代替默认环境变量
$b=$a=~s/a/b/;把$a中a替换为b,赋值给$b
6.printf,sprintf格式化输出函数#p#

十、Perl操作文件和目录

1.opendirTEMPDIR,’c:/’
2.readdir返回的文件名不包含路径名
3.closedir(TEMPDIR);
4.Glob函数查询文件返回的文件名带路径
5.grep查询文件返回的文件名不带路径
6.chdir
7.mkdir
8.rmdir只删除完全是空的目录
9.unlink删除目录下所有文件,并返回文件数量
10.rename
11.Example:
12.chmod赋予权限
13.statfilename;statfilehandle返回文件句柄信息
#打开目录下的所有txt文件

 
 
 
  1. opendir(TD,"C:/TEMP")||die"error:$!";  
  2. @FILES=grep(/\.txt$/,readdirTD);  
  3. foreach(@FILES){  
  4. print$_;  
  5. openFILEH,"C:/TEMP/$_"||die"can'topenfile:$!";  
  6. foreach(){  
  7. printscalar($_);  
  8. }  
  9. }  
  10.  
  11. @files=glob("C:/TEMP/*.txt");  
  12. foreach(@files){  
  13. print$_;  
  14. }  
  15.  

十一、Perl系统互操作性

1.system调用操作系统命令,正常返回0;返回1.

十二、Perl中DBM文件

1.DBM文件是与perl哈希结构联系在一起的文件结构。
2.将哈希结构与dbm关联起来
Dbmopen(hash,filename,mode);
3.each函数,对较大的哈希结构迭代操作
($key,$val)=each(%h);
4.open的限定符
>file只写,不存在创建,重写
>>只写,创建,追加
5.随机读取文件
Seek(fileHandle,Offset,相对位置)函数
6.锁定UNIX和NT下的文件
Flock(FILEHANDLE,locktype);
FL_SH公共锁
FL_EX专用锁
7.读写锁控制:设置一个信标文件

十三、Perl引用和结构

1.创建对变量的引用
$ref=\$a;
2.输出地址引用的值
Print$$ref
3.对数组和哈希表的引用
$$a[0]
@$a
%$a
$$a{xx}
4.列表中的列表
@list_of_lists={[qw(xxx)],[qw(ddf)]};
5.遍历数组
foreachmy$outer(@list_of_lists){
print$outer;
foreachmy$inner(@($outer)){
print$inner;
}
}

十四、Perl使用模块

1.use引用其它模块
例:cwd获取环境变量
Strict改变程序运行特性,使之对引用和裸单词变得严谨

十五、Perl历史

定位于解释型语言,适合作为CGI语言

当前名称:专家指导Perl学习笔记
本文地址:http://www.hantingmc.com/qtweb/news30/363430.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联