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

Perl学习笔记
一、Perl基础
1.常用命令
 1.1perl–v显示Perl版本,测试Perl是否安装
 1.2perldoc–tf<函数名>查找函数信息
 1.3perldoc–q
 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.引用数组元素$
 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文件
- opendir(TD,"C:/TEMP")||die"error:$!";
 - @FILES=grep(/\.txt$/,readdirTD);
 - foreach(@FILES){
 - print$_;
 - openFILEH,"C:/TEMP/$_"||die"can'topenfile:$!";
 - foreach(
 ){ - printscalar($_);
 - }
 - }
 - @files=glob("C:/TEMP/*.txt");
 - foreach(@files){
 - print$_;
 - }
 
十一、Perl系统互操作性
1.system调用操作系统命令,正常返回0;返回1.
十二、Perl中DBM文件
1.DBM文件是与perl哈希结构联系在一起的文件结构。
 2.将哈希结构与dbm关联起来
 Dbmopen(hash,filename,mode);
 3.each函数,对较大的哈希结构迭代操作
 ($key,$val)=each(%h);
 4.open的限定符
 
 >>只写,创建,追加
 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学习笔记
                
                URL标题:http://www.csdahua.cn/qtweb/news30/363430.html
            
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网