有关perl的内置特殊变量介绍
发布时间:2023-08-02 23:29:29
一、正则表达式特殊变量
1、$n :包含上次模式匹配的第n个子串
2、$& :前一次成功模式匹配的字符串
3、$` :前次匹配成功的子串之前的内容
4、$' :前次匹配成功的子串之后的内容
5、$+:前一次使用括号的模式匹配的字符串.
二、文件句柄特殊变量
1、$|:如果设置为零,在每次调用函数write或print后,自动调用函数fflush,将所写内容写回文件
2、$%:当前输出页号
3、$=:当前每页长度
4、$-:当前页剩余的行数
5、$~:当前报表输出格式的名称.默认值是文件句柄名.
6、$^:当前报表输出表头格式的名称.默认值是带后缀”_TOP”的文件句柄名.
三、全局特殊变量
1、$_和$ARG:默认输入和模式匹配内容.如果不指定接收输入的变量或执行模式匹配的字符串
2、$.和$NR:前一次读的文件句柄的当前行号
3、$/和$RS:输入记录分隔符,默认是新行字符.如用undef这个变量,将读到文件结尾
4、$,的$OFS:输出域分隔符.
5、$\和$ORS:输出记录分隔符
6、$: :断行字符,默认是”\n-”三个字符
7、$!:这个变量的数字值是errno的值,字符串值是对应的系统错误字符串
8、$@:命令eval的错误消息.如果为空,则表示上一次eval命令执行成功
9、$$:运行当前Perl脚本程序的进程号
10、$<:当前进程的实际用户号
11、$>:当前进程的有效用户号
12、$(:当前进程的实际组用户号
13、$):当前进程的有效组用户号
14、$[:数组的数组第一个元素的下标,默认是0
15、$]:Perl的版本号
16、$ARGV:当使用”< >”读文件时,保存当前文件名
四、全局特殊数组变量
1、@ARGV:保存命令行参数
2、@INC:保存查找Perl程序的目录
3、@_:在子程序内,这个数组变量包含传递给子程序的参数
4、%INC:散列表%INC包含所有用do或require语句包含的文件.关键字是文件名,值是这个文件的路径
5、%ENV:包含当前环境变量
五、全局特殊文件句柄
1、ARGV:遍历数组变量@ARGV中的所有文件名的特殊文件句柄
2、STDERR:标准错误输出句柄
3、STDIN:标准输入句柄
4、STDOUT:标准输出句柄
PERL内置变量
$- 当前页可打印的行数,属于Perl格式系统的一部分
$! 根据上下文内容返回错误号或者错误串
$” 列表分隔符
$# 打印数字时默认的数字输出格式
$$ Perl解释器的进程ID
$% 当前输出通道的当前页号
$& 与上个格式匹配的字符串
$( 当前进程的组ID
$) 当前进程的有效组ID
$* 设置1表示处理多行格式.现在多以/s和/m修饰符取代之.
$, 当前输出字段分隔符
$. 上次阅读的文件的当前输入行号
$/ 当前输入记录分隔符,默认情况是新行
$: 字符设置,此后的字符串将被分开,以填充连续的字段.
$; 在仿真多维数组时使用的分隔符.
$? 返回上一个外部命令的状态
$@ Perl解释器从eval语句返回的错误消息
$[ 数组中第一个元素的索引号
$ 当前输出记录的分隔符
$] Perl解释器的子版本号
$^ 当前通道最上面的页面输出格式名字
$^A 打印前用于保存格式化数据的变量
$^D 调试标志的值
$^E 在非UNIX环境中的操作系统扩展错误信息
$^F 最大的文件捆述符数值
$^H 由编译器激活的语法检查状态
$^I 内置控制编辑器的值
$^L 发送到输出通道的走纸换页符
$^M 备用内存池的大小
$^O 操作系统名
$^P 指定当前调试值的内部变量
$^R 正则表达式块的上次求值结果
$^S 当前解释器状态
$^T 从新世纪开始算起,脚步本以秒计算的开始运行的时间
$^W 警告开关的当前值
$^X Perl二进制可执行代码的名字
$_ 默认的输入/输出和格式匹配空间
$| 控制对当前选择的输出文件句柄的缓冲
$~ 当前报告格式的名字
$` 在上个格式匹配信息前的字符串
$' 在上个格式匹配信息后的字符串
$+ 与上个正则表达式搜索格式匹配的最后一个括号
$< 当前执行解释器的用户的真实ID
$ 含有与上个匹配正则表达式对应括号结果
$= 当前页面可打印行的数目
$> 当前进程的有效用户ID
$0 包含正在执行的脚本的文件名
$ARGV 从默认的文件句柄中读取时的当前文件名
%ENV 环境变量列表
%INC 通过do或require包含的文件列表
%SIG 信号列表及其处理方式
@_ 传给子程序的参数列表
@ARGV 传给脚本的命令行参数列表
@INC 在导入模块时需要搜索的目录列表
$-[0]和$+[0] 代表当前匹配的正则表达式在被匹配的字符串中的起始和终止的位置 。
猜你喜欢
- 需求有一个表,里面数据量比较大,每天一更新,其字段可以通过xml配置文件进行配置,即,可能每次建表的字段不一样。上游跑时会根据配置从源文件中
- php遍历目录和文件的场景在很多时候都能用到,遍历目录方法的方法有好几种,那么应该使用
- 循环可以用来重复执行某条语句,直到某个条件得到满足或遍历所有元素。1 for循环是for循环,可以把集合数据类型list、tuple、dic
- Oracle RAC提供两种方式实现负载均衡,第一种是纯技术手段,即在用户连接时,根据系统当前的负载情况决定由哪个节点处理用户请求;第二种是
- 5.0版本和之前版本的差异较大,本篇对熟悉3.2版本的用户给出了一些5.0的主要区别。URL和路由5.0的URL访问不再支持普通URL模式,
- 1. 用 Numpy ndarray 作为数据传入 plyimport numpy as npimport matplotlib as mp
- 有关函数HashBytes请参考:http://msdn.microsoft.com/en-us/library/ms174415.aspx
- 最近在学习关于Python数据分析与挖掘方面的知识,在学习到Python数据分析工具方面时,需要安装一些第三方扩展库来增强Python的数据
- set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go Create PROCEDURE [dbo].[
- 银行跨行转账业务是一个典型分布式事务场景,假设 A 需要跨行转账给 B,那么就涉及两个银行的数据,无法通过一个数据库的本地事务保证转账的 A
- 实现思路需求需要将本数据库的数据进行处理(添加前缀),然后导入主数据库。但是当前数据库记录的create_time、update_time
- 在师兄的推荐下入坑vue.js ,发现不知如何运行GitHub上的开源项目,很尴尬。通过查阅网上教程,成功搭建好项目环境,同时对前段工程化有
- 这段时间常给来面试的同学用《 你是一个职业的页面重构工作者吗? 》中三个部分的不同阶段去做自测,发现很多人都自我感觉良好,给我的回答基本都是
- 大家都在关注视觉的盛宴,西方的美学;今天就分享下,中国最为古老的美,也是身边随处可见的美学–中国汉字书法之美;古文者,仓颉做造也。仰观奎星园
- 一 MySQL Workbench MySQL Workbench提供DBAs和developers一个集成工具环境: 1)数据库设计和建模
- Macromedia官方将在其他软件中内建Fireworks技术称为Fireworks技术,网上也称之为内建图片编辑器。Dreamweave
- 最近要做一个网站需要用到天气预报,本来是想找到API,自己写一个自己的天气预报小程序的,没有成功,只好去找现成的代码调用。经过测
- 看起来现在经常用到这样的效果来提高用户体验,所以就没事写了一个输入框提示列表的效果使用宽屏的朋友麻烦帮忙测试下,列表的位置有没有错位。代码可
- 代码如下import sysfrom PyQt5.QtWidgets import QApplication, QWidgetclass E
- 前言本文提供将音频提升音量的python代码,一如既往的实用主义代码。环境依赖ffmpeg环境安装ffmpy安装:pip install f