位置: 编程技术 - 正文

Perl中的特殊内置变量详细介绍(perl ne)

编辑:rootadmin

内置变量 $_:先来看一个例子:例子的作用就是定义一个数组并把其中的元素打印出来,这里需要注意的是foreach循环部分,foreach循环的标准格式应该是:其中数组@array将其中的元素依次赋值给$element,但是在上面那个程序中,我并没有这样做,在程序中,我就使用到了perl中内置的一个特殊变量 $_在程序第五行中 foreach (@array) 实际上就是等于 foreach $_ (@array),在这里, $_是默认是输入/输出,因此,如果在程序中有类似的没有明确声明的变量位置的时候,就有可能能使用$_代替

内置变量 $$: 这是一句命令行上使用的perl程序,作用就是打印出一段话:print qq(The PID of process perl.exe is : $$) ,在这里,存在着特殊变量$$ ;$$是当前perl解析器的进程ID(即,PID),大家可以将在段程序写在命令行上,该程序会在perl解析器运行5秒后打印出perl解析器的进程ID,大家可以在程序运行期间通过查看进程列表来确定打印结果是否正确。

内置变量 $!:接下来是一个用来返回错误信息(或是错误号)的特殊变量。为了省事,不写程序了,还是来个命令行的吧这句话就是要打开C盘下的一个none目录(而实际上我的C盘中并没有此目录,之所以这样写的目的就是为了引起一个程序中的错误信息),如果没有打开的话,会执行后面的die qq(can't open:$!)在这里,$!就指明了错误信息的内容,命令行会返回错误信息:$!在open或是opendir中用的比较多(无论是打开文件还是管道或是其他)。

来个例子,说一个有意思的特殊内置变量=================================C盘下的test.txt的内容是:=================================好,程序的运行结果是:#===========================#

程序就不多废话了,作用就是读文件,关键部分在“$line = ”,尖括号操作符(即,<>)作用是读取一行文件内容(相信大多数教程或是书上都是这么写的),但是,这里所说的一行,实际上是有一个标准的,那就是当perl在遇到了换行符后,边认为是一行,而换行符默认情况下是由于$/这个特殊变量定义的,是缺省值。也就是说,perl 在每次使用<>操作符读文件的时候,会先从$/中获得一个叫做“分隔符”的东西,并以该分隔符为标记来读取文件,如果按默认的$/来说,这个分割符就是一个换行符,所以,默认时,<>操作符才会每次读取一行文本。在给出的例子中,有这样一句 :undef $/ ,也就是将$/设置为未定义的值,这样一来呢,$/就不再起作用了,因此,大家可以看到,第二次进行同样的操作的时候, <>操作符就不再是只读一行而是将文件内容全部读出来了。

接下来看一个会受到$/影响的内置变量,还是先说实例:先来看循环中的:print "line $. is:$_"程序的作用是读文件,并且,将文件逐行赋值给$_(因为只用了<>操作符而没有指定内赋值变量,因此,默认就是赋值给了$_);但是这里除了$_,还有一个变量“$.”我们来看一下结果:可见,变量$.的作用是一个类似计数器的东西,但是,为什么刚开始我说$.会受到$/变量的影响呢 ?

将上面的例子稍做修改,再看一下:

第二行多加了一句undef $/; ,上面已经说过它的作用了,来看一下这段程序运行的结果:本来应该是三行的文本,不但被一次性打印出来,而且还指明了“line 1”(看来程序认为这个文本只有一行),为什么 ?这是因为$.变量并不是一个单纯的行计数器,确切地说,可以说$.是一个对$/计数器,我们再来看一段程序大概就会明白了:

再看一下C盘下的a.txt的内容:就这么简单了。看一下运行结果:看过这段程序应该就明白了吧。

好,$.已经讲得差不多了,接下来再说一个它的特性,仍然是看程序说话:这个程序要注意的是最后三行中的两个print " ",$.;(一个是在关闭文件前,另外一个则是在关闭文件后)。看一下执行结果:结果的前三行刚才就已经知道了,这不是我们关心的,我们应该关心的是最后两行结果(即两个print " ",$.;的结果);$.变量是具有记忆性的(从原理上来将,它是一个包变量),因此,在关闭文件前打印会发现,它的值是还没有变化的(这时的值和最后一次读完文件的值均为3);而在关闭文件后,该变量又被重新初始化为0了。这个特性大家注意一下就可以了,因为其中的原理涉及到了perl的作用域和包的一些知识,不是很容易说清楚,所以就不说了,如果对包和作用域有了解的读者对这部分即使我不讲他们也应该能理解的。

内置变量:$^O:再说最后一个吧说一个用来简单判断操作系统类型的,看个例子:注意,这里这个特殊变量$^O 最后一个字符是字母O,且大写。如果是在linux下的话,结果就不是MSWin了,而是Linux ;这是一个判断环境的变量,简单实用。

推荐整理分享Perl中的特殊内置变量详细介绍(perl ne),希望有所帮助,仅作参考,欢迎阅读内容。

Perl中的特殊内置变量详细介绍(perl ne)

文章相关热门搜索词:perl处理特殊符号,perl 特殊变量,perl ne,perl 特殊字符,perl 特殊变量,perl处理特殊符号,perl中的$_,perl 特殊字符,内容如对您有帮助,希望把文章链接给更多的朋友!

Perl内置特殊变量总结 [文件句柄]$|如果非零,则在对当前选定的文件执行写或打印操作后强制清除缓冲区$%当前选中文件句柄的当前页码$=当前选中文件句柄的当前页面长度$-

Perl Sort函数用法总结和使用实例 一)sort函数用法sortLISTsortBLOCKLISTsortSUBNAMELISTsort的用法有如上3种形式。它对LIST进行排序,并返回排序后的列表。假如忽略了SUBNAME或BLOCK,sort按标准字

Perl调用shell命令方法小结 一、systemperl也可以用system调用shell的命令,它和awk的system一样,返回值也是它调用的命令的退出状态.[root@AX3sp2~]#cataa.pl#!/usr/bin/perl-w$file="wt.pl";system("ls-lwt.pl

标签: perl ne

本文链接地址:https://www.jiuchutong.com/biancheng/372569.html 转载请保留说明!

上一篇:Perl遍历目录和使用Linux命令分析日志的代码实例分享(遍历目录文件)

下一篇:Perl内置特殊变量总结(perl处理特殊符号)

  • 企业收取培训费
  • 企业所得税怎么做账
  • 向个体工商户付款可以现金支付吗
  • 注册分公司独立核算和非独立核算的区别
  • 个体户可以开多个银行账户吗
  • 怎么查企业适用哪个会计制度教学视频
  • 核定征收的收入总额包括营业外收入吗
  • 无形资产研发费用加计扣除是晢时差异吗
  • 算材料成本的时候要算增值税吗?
  • 非货币性资产交换的会计处理
  • 工资做账原始凭证是什么
  • 年会奖金多少合适
  • 给政府开发票如何处理?
  • 生产企业电费要不要计提?
  • 房地产企业预缴企业所得税怎么算
  • 增值税进项发票网上勾选平台
  • 发票金额看不清楚可以报销吗
  • 花店怎么做会计工作
  • 房地产企业卖出去的房子需要缴纳城镇土地使用税吗
  • win7原版系统安装后没有任何驱动
  • 一般纳税人出租其2016年4月30日前取得的不动产
  • 收到法院的案件款应该怎么做帐
  • 戛纳,法国 (© Manjik Photography/Alamy)
  • uni app
  • steam怎么退款申请退款要多久
  • PHP:curl_getinfo()的用法_cURL函数
  • vue onshow
  • 白沙国家公园中标公告
  • 史密斯理工学院
  • 今日除夕吉时
  • vue3.0配置
  • springcloud阿里巴巴
  • 增值税改动
  • 租赁房产税如何交税
  • mysql数据库uuid
  • 收入和成本的原则是什么
  • 如何查询以前申请的新西兰签证记录
  • 小规模纳税人可以做进出口贸易吗
  • 商誉减值每年都要调整吗
  • 哪些凭证是免纳税的
  • 季度亏损需要计提企业所得税吗
  • 招待客户的住宿费发票可以报销吗
  • 建筑业的人工费是什么
  • 认证过的发票红冲了还要退回吗
  • 对外服务应收取的款项
  • 收到银行的贷款怎么做会计分录
  • 查账征收与核定征收在哪里看
  • 接受捐赠固定资产存货等有相关凭据的其成本按什么确定
  • 费用报销如何做账务处理分录
  • 外聘人员的劳务合同模板
  • 增值税普通发票需要交税吗
  • 商贸公司库存商品进销存报表怎么做
  • 什么是中型企业
  • 企业为什么要进行绩效管理?
  • 个人所得税会计分录怎么做
  • 私企干不长久
  • mysql 备份和恢复
  • win7使用率
  • xp系统 控制面板
  • windows 2000 server sp4 下载
  • vmware 启动虚拟机
  • 用u盘怎么装系统win10
  • centos6.7防火墙
  • switpa.exe - switpa是什么进程
  • centos硬盘分区磁盘分区
  • software protection延迟启动
  • explore是什么文件
  • 轻松掌握瓷砖铺贴技术 pdf
  • python的正则语法
  • javascript自动化
  • 用python播放音乐
  • unity3d控制物体移动
  • 安卓手机管家删除的照片怎么恢复
  • unity加密代码
  • 基于mvc的项目实例
  • python 观察者
  • python文件遍历
  • 陕西省地方税务局关于调整土地增值税预征率的公告
  • 德税手卷烟海淘
  • 车船税发票丢了怎么补办
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设