加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl学习笔记(二)——语法

发布时间:2020-12-15 23:49:02 所属栏目:大数据 来源:网络整理
导读:点击打开链接 数据操作 $ ?- 声明与引用用一个scalar的变量 @ ?- 声明与引用一个list,但是当访问一个list的成员时,需使用$ListName[index] % ?- 声明与引用一个hash表,但是当访问一个hash的成员时,需要使用$HashName{key} 特殊变量 $0 ?- 当前运行脚本的

点击打开链接

数据操作

  • $?- 声明与引用用一个scalar的变量
  • @?- 声明与引用一个list,但是当访问一个list的成员时,需使用$ListName[index]
  • %?- 声明与引用一个hash表,但是当访问一个hash的成员时,需要使用$HashName{key}

特殊变量

  • $0?- 当前运行脚本的文件名
  • @ARGV?- 当前运行脚本的命令行参数列表
  • $_?- 默认变量,如循环中的当前变量
  • @_?- 函数的输入参数列表
  • %ENV?- 系统的环境变量
  • @INC?- Perl的Include路径列表,我们可以往该列表中添加我们自己的目录来方便引用自定义的库
  • $!?- 当前系统提示,错误信息
  • $^O?- 操作系统的名字
  • STDIN,STDOUT,STDERR?- 输入输出的默认句柄,可以作一定的自定义
  • =>?- 声明一个hash时可以用来明确的表示出key=>value的对应关系
  • $^I-?指定备份的文件的后缀名,如此,被修改的文件将会自动以该后缀名保存一个副本

特殊用法

  • &Sub?- 调用一个函数,虽然Perl有些规则让你在某些时候可以省略这里的&符号,但是处于一致性考虑,所以自定义的函数的调用,我一律采用此种方式。
  • $#?- 用来取得模个数组的最大index,一般情况下,也可以用-1来表示最后一个元素的index的
  • qw()?- 快速声明一个字符串数组,可以省略那些烦人的引号

正则表达式

  • $ < digit >?- 获取被括号捕获的匹配
  • $`,$&,$'?- 获取匹配的字符串,以及其前后两个部分
  • ^,$?- 字符串的始末位置,用作定位

常用函数

  • pop,push,shift,unshift,reverse?- list的操作函数
  • keys,values,exists,each,delete?- hash的操作函数
  • chomp,split,join,index,substr,sort?- 字符串操作函数
  • sprintf,printf,print?- 格式化输出函数
  • system,exec,``?- 系统命令调用函数
  • glob,unlink,mkdir,rmdir,rename,chmod,chown,open,close,opendir,closedir?- 文件系统操作函数
  • stat,lstat,localtime,gmtime,utime?- 文档属性,时间相关函数
  • hex,oct?- 二进制,八进制,十六进制数转化成十进制的函数
  • grep,map?- list高级操作函数
    这些函数的详细介绍,都可以通过命令:
    1
    perldoc -f functionname
    查到

常用库

  • File::Basename?- 根据path获取文件名或者文件路径
  • File::Spec?- 根据文件名与路径组合成全路经
  • File::Find?- 递归遍历某个目录下所有文件
  • XML::Simple?- 以一个复杂的结构来表示xml文件,使用起来相当方便
  • Time::HiRes?- 经常用来计算一个操作所耗费的时间
  • Getopt::Long?- 当脚本需要复杂的输入参数与选项时用到
  • Cwd?- 拿到当前工作目录
  • IO::File?- 文件操作
  • Win32?- 当需要调用一些Windows API时我会用它

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读