Perl特殊变量用法大全
本文和大家重点讨论一下Perl特殊变量的概念及用法,主要从省变量和参数,正规表达式变量,输入/输出变量等六个方面向大家介绍,希望本文的介绍能让你有所收获。
Perl特殊变量
一、Perl特殊变量之缺省变量和参数
变量名英文名称说明
_ARG全局标量充当函数参数以及模式寻找空间的缺省变量
默认的输入/输出和格式匹配空间
@_n/a存储数组参数,访问方式:_[num]
传给子程序的参数列表
@ARGVn/a脚本的命令行参数
ARGVn/a当从空文件头<>读取时,它包含了当前文件的文件名
从默认的文件句柄中读取时的当前文件名
二、Perl特殊变量之正规表达式变量
(num)n/an/a
&MATCH最近一次成功的匹配中相匹配的字符串
'POSTMATCH最近一次成功的匹配子串之后的字符串
`PREMATCH最近一次成功的匹配子串之前的字符串
+LAST_PAREN_MATCH最近一次成功的匹配同一组子模式相匹配的最后一个子串
与上个正则表达式搜索格式匹配的最后一个括号
三、Perl特殊变量之输入/输出变量
.INPUT_LINE_NUMBER上次阅读的文件的当前输入行号
/INPUT_RECORD_SEPARATOR
\OUTPUT_RECORD_SEPARATOR当前输入记录分隔符,默认情况是新行
|OUTPUT_AUTOFLUSH控制对当前选择的输出文件句柄的缓冲
,OUTPUT_FIELD_SEPARATOR当前输出字段分隔符
"LIST_SEPARATOR列表分隔符
*设置1表示处理多行格式.现在多以/s和/m修饰符取代之.
-[0]代表当前匹配的正则表达式在被匹配的字符串中的起始的位置
+[0]代表当前匹配的正则表达式在被匹配的字符串中的终止的位置
四、Perl特殊变量之文件句柄/格式变量
#OFMT打印数字时默认的数字输出格式
OUTPUT_AUTOFLUSH当前输出记录的分隔符
%FORMAT_PAGE_NUMBER当前输出通道的当前页号
=FORMAT_LINES_PER_PAGE当前页面可打印行的数目
-FORMAT_LINES_LEFT当前页可打印的行数,属于Perl格式系统的一部分
~FORMAT_NAME当前报告格式的名字
^FORMAT_TOP_NAME当前通道最上面的页面输出格式名字
:FORMAT_LINE_BREAK_CHARACTERS字符设置,此后的字符串将被分开,以填充连续的字段
^LFORMAT_FORMFEED发送到输出通道的走纸换页符
^AACCUMULATOR打印前用于保存格式化数据的变量
;在仿真多维数组时使用的分隔符
五、Perl特殊变量之错误变量
?CHILD_ERROR返回上一个外部命令的状态
@EVAL_ERRORPerl解释器从eval语句返回的错误消息
!ERRNO#根据上下文内容返回错误号或者错误串
^EEXTENDED_OS_ERROR在非UNIX环境中的操作系统扩展错误信息
六、Perl特殊变量之系统变量
PROCESS_IDPerl解释器的进程ID
<REAL_USER_ID当前执行解释器的用户的真实ID
>EFFECTIVE_USER_ID当前进程的有效用户ID
(REAL_GROUP_ID当前进程的组ID
)EFFECTIVE_GROUP_ID当前进程的有效组ID
0PROGRAM_NAME包含正在执行的脚本的文件名
^XEXECUTABLE_NAMEPerl二进制可执行代码的名字
]n/a数组中第一个元素的索引号
[n/aPerl解释器的子版本号
^OOSNAME操作系统名
^TBASETIME从新世纪开始算起,脚步本以秒计算的开始运行的时间
^WWARNING警告开关的当前值
%ENVn/a环境变量列表
%SIGn/a信号列表及其处理方式
^CCOMPILING
^DDEBUGGING调试标志的值
^FSYSTEM_FD_MAX最大的文件捆述符数值
^IINPLACE_EDIT内置控制编辑器的值
^Mn/a备用内存池的大小
^PPerlDB指定当前调试值的内部变量
^RLAST_REGEXP_CODE_RESULT正则表达式块的上次求值结果
^SEXCEPTIONS_BEING_CAUGHT当前解释器状态
^VPerl_VERSION
^H由编译器激活的语法检查状态