Perl
文章平均质量分 87
lanyanai
这个作者很懒,什么都没留下…
展开
-
perl常见运算符
perl语言中涉及的运算符很多,不便于记忆。还好,有好心的网友做了整理和归纳,现转载在此,希望对大家有用!赋值 (Assignment) 运算符 算术(Arithmetic) 运算符 数值 (NumericValues) 关系运算符 字符串 (StringValues) 关系运算符 逻辑 (Logical)运算 其它常用的运算符 常用的文件数据 (Filetes原创 2013-10-14 12:53:47 · 1250 阅读 · 0 评论 -
Perl笔记:06、正则表达式
什么是正则表达式正则表达式在perl又称作模式,是一个匹配(或不匹配)某字符串的模板使用简易模式如果模式匹配的对象是$_的内容,只要把模式写在一对反斜线(/)中就可以了,如下所示:$_="yabba dabbadoo";if(/abba/) {print "Itmatched!\n";}表达式/abba/会在$_中寻找这4个字符组成的串,如果找到就返回真,这里会找到不止原创 2013-10-14 12:54:00 · 598 阅读 · 0 评论 -
Perl笔记:05、哈希
什么是哈希哈希是一种数据结构,和数组相比相同在于:可以容纳很多值(没有上限),并能随机存取。区别在于:不像数组是以数字来检索,哈希是以名字来检索。也就是说检索用的键不是数字,而是保证唯一的字符串所谓键其实就是字符串,所以我们不必用数字3来获取数组元素,而是用vilma这个名字来存取哈希元素。这些键可以是任何字符串……你可以用任意字符串表达式作为哈希键。它们也必须是唯一的字符串,就像数组原创 2013-10-14 12:53:58 · 871 阅读 · 0 评论 -
Perl笔记:03、子程序
子程序的定义sub 子程序名{子程序内容}子程序的调用&子程序名返回值子程序中的最后一行即为返回值,如下示例:#!/usr/bin/perl-w$fred=5;$barney=3;subsum_of_fred_and_barney{print "Hey,you called thesum_of_fred_and_barney!\n";$fred+$barney;原创 2013-10-14 12:53:54 · 804 阅读 · 0 评论 -
Perl笔记:01、变量
字符型变量和数值型变量数值型变量可以直接用 3*8 ,7+9的方式来书写字符型变量的连接可以使用点(.)操作符,如 "abcd"."xxxx"等同于"abcdxxxx"字符型变量可以内嵌到其他的字符型变量中,但要求的字符串必须用双引号来括起的形式,单引号的不能够内嵌如 :$ZYQ="ZhouYueQiu"$NAME="my name is$ZYQ"注意:如果$ZYQ没有赋值,那么将用原创 2013-10-14 12:53:49 · 903 阅读 · 0 评论 -
用UltraEdit编写perl语言
perl语言没有集成开发环境,用记事本或是写字板写好perl程序,然后保存成.pl格式的文件就可以运行。由于perl是解释性的语言,不需要编译,所以写好的程序直接双击就可以运行,当然前提是装了perl的插件。当然用记事本编写perl是非常麻烦的事情,因为关键字不可以很清楚的表示出来。这里介绍一下我的开发环境,在这里就像C语言的开发环境一样方便。安装:首先安装UltraEdit,我用的是中文版原创 2013-10-14 12:53:45 · 1261 阅读 · 0 评论 -
Perl笔记:13、智能匹配与given-whe…
智能匹配操作符Perl 5.10版本中的智能匹配操作符(~~)会根据需要选择恰当的方式比较两端的操作数。它只用于判断操作数是否相同,在比较大小时就不能用了,老老实实的用传统的比较操作符吧。智能匹配操作符~~和前面讲的绑定操作符=~很像,不过相对来说~~操作符更强悍一些。他甚至可以代替绑定操作符。如下:先前用绑定操作符print "Ifound Fred in the name!\n"i原创 2013-10-14 12:54:15 · 865 阅读 · 0 评论 -
Perl笔记:08、用正则表达式处理文…
1、用s///替换$_ = "He's outbowling with Barney tonight.";s/Barney/Fred/;# 将 Barney 替换为Fredprint "$_\n";当然这里可以使用比较复杂的正则表达式s/with (\w+)/against $1'steam/;print "$_\n";输出He's out bowling agai原创 2013-10-14 12:54:05 · 765 阅读 · 0 评论 -
Perl笔记:第02章、列表与数组
列表(list):列表指的是标量的有序集合。数组(array):是存储列表的变量列表指的是数据,而数组指的是变量。列表的值不一定放在数组里,但每个数组变量都一定包含一个列表(即使该列表可能是空的)。如下图是一个列表,无论他是否存储在某个数组中:包含5个元素的列表数组或列表中的每个元素(element)都是单独的标量变量,拥有独立的标量值。这些值是有序的,也就是说,从起始元素到终止元素的原创 2013-10-14 12:53:52 · 531 阅读 · 0 评论 -
Per笔记:10、文件测试
一、文件测试操作符及其意义:-r 文件或目录,对目前(有效地)用户或组来说是可读的-w 文件或目录,对目前(有效地)用户或组来说是可写的-x 文件或目录,对目前(有效地)用户或组来说是可执行的-o 文件或目录,由目前(有效的)用户拥有-R 文件或目录,对实际的用户或组来说是可读的-W 文件或目录,对实际的用户或组来说是可写的-X 文件或目录,对实际的用户或组来说是可执行的-O 文件原创 2013-10-14 12:54:09 · 611 阅读 · 0 评论 -
Perl笔记:09、其他控制结构
unless控制结构unless控制结构与if控制结构恰恰相反,if是判断表达式为真才执行下面的语句块,unless则判断表达式为假就执行语句块。如果unless控制结构中加入else子句的时候那就相当于将if...else的代码执行部分反过来写是一致的:unless ($mon=~ /^Feb/) {print "This month has at least thirty da原创 2013-10-14 12:54:07 · 688 阅读 · 0 评论 -
Perl笔记14、进程管理
system 函数system函数是Perl中启动子进程最简单的方法。如下调用linux的date命令:system "date"它会创建一个子进程来运行date命令,并且这个子进程继承了Perl的标准输入/输出/错误。也就是说date的输出日期时间字符串会送到目前Perl的STDOUT指向的地方。system函数可以使用单个,或多个参数的形式,其中单个函数的形式很简单,经需要运行的命令原创 2013-10-14 12:54:18 · 812 阅读 · 0 评论 -
Perl笔记:12、字符串与排序
index函数使用方法:index(待检索的字符串,"检索什么",从哪开始检索);如下:my $string = "hello world!";my $where = index($string,"wor");$where的结果为6,即wor中的w首次出现的位置,这个位置是从零开始算起的,如果你非要从1算起也可以,但解释就有些不同了,如果从1开始算起,你可以理解为“到达此字符之前经过原创 2013-10-14 12:54:13 · 2009 阅读 · 0 评论 -
Perl笔记:11、目录操作
在目录树中切换程序运行时会以自己的工作目录作为相对路径的起点。可以使用chdir操作符来改变当前的工作目录,这和shell下的cd命令差不多:chdir "/etc" or die "can'tchdir to /etc:$!";注意这里我用到了$!变量,由于这是对操作系统的调用,所以发生错误时便会设定标量标量$!的值。如果chdir的返回为假,则表示有问题发生,这时通常需要检查一下$原创 2013-10-14 12:54:11 · 811 阅读 · 0 评论 -
Perl笔记:04、输入与输出
读取标准输入$line=;#读取下一行chomp($line);#截掉最后的换行符chomp(my$line = );#这一行相当于上面的两行如果读到文件结尾,“行输入”操作符就会返回undef。这样的设计是为了配合循环使用,可以自然的跳出循环:while(defined($line=)){print "Isaw $line\n";}第一行程序代码做原创 2013-10-14 12:53:56 · 714 阅读 · 0 评论 -
Perl笔记:07、以正则表达式进行匹…
一章已经简单的介绍了正则表达式的应用,在本章会介绍在Perl中如何应用这些正则表达式。以m//进行匹配我们已经在上章简单的使用双斜线的方式来编写模式(注意这里的模式实际上指的就是正则表达式),像/fred/。但实际上,这是m//(模式匹配)操作符的简写。就像我们在说明qw//操作符时提到的,可以选择使用任何成对的定界符。所以,我们可以把同样的表达式写成m(fred)、m、m{fred}或m[原创 2013-10-14 12:54:02 · 717 阅读 · 0 评论