阿娇开发978 发表于 2018-8-31 07:19:22

perl编程总结

  perl主要有三种数据类型,一个是$保存的变量,一个是@保存的数组,一个是%保存的哈希数组。
  perl中的变量$
  $保存的变量在PERL中是不区分任何类型的,也就是说没有数据类型的概念。perl会根据上下语境自动识别。例如 my $value = 10;perl会当做变量来识别。perl中连接两个字符串变量使用的是.号。例如
  my $first = "i love"; my $second = "study"; my $value = $first.$second;就将两个字符串连接到一起了。
  perl中数字比较大小使用 > < =等,字符串比较大小是 eq gt等。
  对字符串的的替换使用的命令是 s///; 例如 my $test = &quot; it &quot;;   $test = ~ s/^\s+//;$test =~ s/\s+$//;去掉首尾的空格,这对于文件路径很重要,去掉开头与结尾的空格。符号^表示是字符串的开头,符号$表示是符号的结尾。.匹配任何字符,*表示是0到多个,+表示一个到多个,?表示0到1一个。
  split命令
  使用split命令可以将一个字符串分解成一个数组。使用方式为 split /swparator/,$value;例如
  my $test = &quot;it ,is ,goood&quot;; my @array = split/,/$testl;得到的结果数组中就是it is goood.
  join命令
  join命令与split的命令相反,是把数组中的每一个变量粘合在一起。用法 join $value,@array.上例子中,使用join例如 my $value = join ,@array. 最后$value 为&quot;it,is,gooood&quot;;
  m//;
  将变量按照一定的模式进行匹配m//之间可以是正则表达式也可以是一定变量,例如:my $test = &quot;how are you&quot;;if($test =~ m/test/) 看字符串是否包含test。
  $_
  代表目前perl处理的变量,chomp($value);可以去掉输入的变量后面的回车符号。
  \
  这个字符代表获得元字符,是获得元字符的意思。例如想在正则表达式中匹配点号.使用\.就可以防止perl程序进行转意。
  index命令
  在一个字符串中查找一个子串第一次出现的位置, my $test = &quot;you are good&quot;; my $place = index($test,&quot;are&quot;);就是查找字符串are第一次出现的位置,rindex是查找指定字符串最后一次出现的位置。
  substr命令
  取一个字符串的子串,例如 my $test = &quot;you are good&quot;; my $newstr = substr($test,0,3); $newstr就为you.
  die命令
  die可以使perl遇到错误时跳出程序。
  perl中的数组@
  perl中像数组中插入元素为 push @test,$value;弹出元素是 my $test = pop @test;在最前面取和存分别是my $test = shift @test;unshift@test,$value;判断数据大小为 my $size = @array;取得数组的大小。
  if(@array ~~$value)数组中是否包含这个元素。清空数组中的元素为undef(@array);
  多维数组插入方式为push @AllSheetContent,[@AllRowDate];获取方式为$AllSheetContent获得的是第一维数组。若是 push @AllSheetContent,$value1; push @AllSheetContent,$value2;
  $AllSheetContent取得的是$value1;
  perl中的哈希%
  哈系声明,my %hashtable; 哈系赋值 $hashtable{$key} = $value;注意哈系是大括号,数组取值是中括号。获得哈系的所有key值为 my @key = keys %hashtable;获得哈系的所有values值为
  my @value = values %hashtable;获取哈系数目的大小 my $count = keys %hashtable;
  判断哈系是否包含某个key值为 if(exists $hashtable($value)) 删除哈系中的一个键值对为
  delete $hashtable{$value}
  perl中的文件操作
  文件句柄
  open openhandle &quot;filename&quot;;
  open openhandle &quot;>>filename&quot;;
  这三种打开文件的方式分别为:第一种是打开文件进行读取操作。第二种是以写的方式打开文件,如果之前存在相同名字的文件则删除掉。第三种是以追加写的方式打开文件,如果之前存在则在文件后面进行追加写。最后要记得关闭文件句柄。close(openhandle);
  文件类型的判断使用 if(-e $filename)判断文件是否存在,使用if(-d $filename)判断文件是否是一个目录,使用if(-f $filename)判断文件是否是一个文件。
  基本上就这些,有点杂乱,后续有知道的在补充。

页: [1]
查看完整版本: perl编程总结