位置: 编程技术 - 正文

Perl学习基本备忘录(perl快速入门)

编辑:rootadmin

1.Perl数组(1):

1) 初始化数组 @array = ( "stringA" , "stringB" , "stringC" );2) 使用负索引循环检索 print $array[-1]; #输出索引为(-1 + 3) % 3 = 2 的 stringC3) 动态增长 $array[4] = "stringD"; #虽然$array[3]还没有使用,但在动态赋值$array[4]的使用,已经对$array[3]赋空置4) 动态增长后的负索引 print $array[-1]; #输出索引为(-1 + 5) % 5 = 4 的 stringD5) print @array; #输出数组中所有值的无空格串接6) print "@array"; #输出数组中所有值的空格分隔列表

2.Perl数组(2):

1) 数组中可以保存不同类型的数据(字符串、数值、数组)2) $size = @array; 该语句把数组@array的数组长度值给标量$size,但如果在某些函数中直接使用@array,将不一定能得到数组长度3) $#arrayname,该特殊变量保存着名为arrayname的数组的末尾索引值。例如:  @arr = ( 1,2,3,4,5 );则$#arr的值为4$#arr=2; 这样就把数组arr截断,其元素4和5都被释放,数组长度值也被改变4) @array[-1,4,7] 将分别输出索引值为-1,4,7的元素,这样的调用返回值不是标量,而是数组5) 多维数组使用多层方括号定义@D3array = ([ [1,2,3,4] , [5,6,7] , [8,9,0] ],[ [ 'str1' , 'str2' , 'str3' ] , [ , , ] ],[ [ 4,6,7] , [2] , [ "sud" ] ]);

多维数组中每维的数组长度不需要一致,内部数据元素也不需要一致。获取第一维的数组长度方式是 $size = @array;第二维         $size = @{$array[$i]};第三维         $size = @{$array[$i][$j]};.......         ......关键是,只要@符号后跟一个数组变量时,就可以获取其长度,但超过一维时,获取数组变量的表达式要用{}包住

3.命令行执行Perl语句

1)perl -e '命令语句' 这样可以直接在命令行执行Perl语句,不过要注意引号匹配规则。2)perl -ne '命令语句' filename 这样可以逐行读入filename中的数据,然后对每行都以命令语句处理。例如 a) perl -ne 'print;' abc.txt在命令行界面逐行输出abc.txt文件的数据b) perl -ne 'print if /^/ ' /etc/hosts > ~/hosts.tmp把UNIX like系统中主机解释文件的内容逐条写到~/hosts.tmp文件下,不过只有符合以开头的行,才会被写入,因为语句会执行筛选

3)'OS命令' | perl -ne '命令语句' 这样可以把之前执行的OS命令的输出作为输入流,重定向到后面执行的perl命令中。例如 a) ls -al | perl -ne 'print;'把当前目录下所有子文件、子目录列出,并作为输入数据输入到perl命令中,再逐条打印

4.Perl引号规则

1)双引号中的内容允许转义和变量解析,缩写是qq/内容/2)单引号中的任何字符都不会被转义和变量不会被解析,缩写是q/内容/3)反引号中的内容如果出现OS命令,该命令会被执行,并且结果数组会替换命令位置,或作为赋值的数据,缩写是qx/内容/4)上述缩写中,符号对/内容/可以用其他符号替代,效果相同,例如qq(内容),qx!内容!,q+内容+等等,但字母好像不可以

5.here文档规则

1)起始标签没有使用任何引号。对文档内容的效果等同于使用了双引号。2)起始标签使用了单引号。对文档内容的效果等同于使用了单引号。3)起始标签使用了反引号。对文档内容的效果等同于使用了反引号。

6.变量初始化

Perl中的变量在第一次出现时被分配内存。如果没有显式初始化,则会被赋值为0或者空字符串,具体怎样表现要视乎该变量出现的上下文。使用defined函数,defined $var 可以检查变量是否已经被初始化。使用undef函数,undef $var 可以释放变量的内容。

7.特殊变量

1)$_, 该变量的值经常作为默认参数值,例如这样调用 print; 不给予任何参数,则会打印出$_的值;当使用文件句柄读入数据时,若不指定使用什么变量保存读入数据,也会读入到$_中。

8.Hash1)Hash表定义语法: %aHash = (  'key1' => "value1",  "key2" => 'value2', "key3" => , => "") ;

2)Hash表中的键值可以是数字、字符串、数组甚至另一个hash表,不过如果要采用非字符串键值,则最好以单个键/值对赋值的形式插入到hash表中,而不是在初始化时插入。

3)对1)中的hash表,可以使用以下操作使用hash slice:

通过这样的方式,可以创建新的hash表,如果名字相同(除了起始的%变为@),则会在原有的hash表中插入,而非创建。

b)对3)中修改后的aHash,可以采用以下方式获取其值集合的子集:@subSet数组中保存元素的顺序为赋值时指定键的顺序。其中 @hash表名 这种使用方式,称为hash slice。

9.数组HASH嵌套

上述调用中->符号可以省略。

.操作符上下文1)当操作符的上下文是数值时,操作数中的开头空格会被跳过,直接找到操作数中第一个数字,而随后的字符串也会被跳过。若操作数的起始字符串不是空格也不是数字,则该操作数被解析为0。一个例外是当操作数的形式为科学记数格式时,会被作为一个整体解释。

2)当操作符的上下文是字符串时,所有操作数都被解析成字符串。

.逻辑操作符解析Perl的各个逻辑操作符都可以理解成短路的,即一旦得出有效结果,就不会继续解析后面的表达式;并且返回最后一个解析的逻辑表达式的解析值,除了异或运算符。

推荐整理分享Perl学习基本备忘录(perl快速入门),希望有所帮助,仅作参考,欢迎阅读内容。

Perl学习基本备忘录(perl快速入门)

文章相关热门搜索词:perl如何使用,perl视频教程全57讲,perl有什么用,perl如何使用,perl快速入门,perl基础教程,perl入门教程,perl 教程,内容如对您有帮助,希望把文章链接给更多的朋友!

Perl 字符串处理备忘录 1.chop和chomp函数两个函数都以字符串作为参数,并去除其末尾最后一个字符。区别是,无论最后一个字符是什么,chop都会去除,并在返回值中返回;而

perl处理csv文件的小例子 #!/usr/bin/perl#usestrict;open(FILE1,"C:/Perl/BX/BX-Users.csv");open(FILE2,"C:/Perl/BX/BX-Books.csv");open(FILE3,"C:/Perl/BX/BX-Book-Ratings.csv");open(result1,"C:/Perl/BX/BX-Users.txt");my%table;my$r

perl从文件中读取数据并输出的实现代码 window下读取某个文件,格式是:open(filehand,"路径e.g:d:\data.txt");然后将打开的内容赋值给一个变量:$protein=filehand;附:一个读取蛋白质序列的程序。#!/bi

标签: perl快速入门

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

上一篇:perl用变量做句柄介绍(perl变量后拼接字符串)

下一篇:Perl 字符串处理备忘录(perl字符串替换 ~s)

  • 租金收入个税怎么交
  • 保险费车船税会计分录
  • 进项税额抵扣计算
  • 捐赠支出增值税
  • 出差补贴要不要发票
  • 公司费用票
  • 发票上有字迹可以拿去作废吗
  • 发票没有纳税人识别号能开吗
  • 现在会计账簿还需要交印花税吗
  • 水利建设专项收入的计税依据是什么?
  • 设计服务类合同
  • 停业的纳税人还交税吗
  • 产品成本核算时做好哪些基础工作
  • 其他综合收益不能重分类进损益的有哪些
  • 虚开发票的受票企业将会受到什么处罚?
  • 利润的计算方法数学
  • 发票超过2个月可以报销吗
  • 个体工商户有公户吗?
  • 部队属于企事业单位吗
  • 季度报税每个月还用计提吗
  • 投资款需要交印花税嘛
  • 企业财务负责人和办税人哪个责任大
  • 企业收到固定资产投资时应按什么入账
  • 委托加工存货要交什么税
  • win10开机选择系统%1
  • 城建税的会计分录是什么
  • 税务局手续费返还
  • 国有资产租赁合同问题
  • windows11 缩放
  • php计算时间
  • 转账收到支付宝电话
  • 缴医保分录
  • 美国布莱斯大峡谷成因
  • html简单例子
  • 巴塞罗那城市布局
  • 废品损失属于产品成本项目吗
  • 工会经费免征三年的文件山东
  • 开源原则
  • 语音语言
  • vue组件之间传值几种方法
  • php数组转树
  • php静态方法可以被继承吗
  • php+jQuery+Ajax简单实现页面异步刷新
  • php如何上传1个g以上的文件
  • 开红字发票导入信息不完整怎么处理?
  • 增值税减免怎么填写
  • 房子是固定资产的好处
  • 路由器无线设置模式哪个更快
  • 织梦如何添加浮动广告
  • 酒店如何控制成本汇报怎么写
  • 购买旧固定资产入账
  • 商品流通企业流程图
  • mongodb查询操作
  • 企业利润分配的含义
  • 公司向法人借款协议
  • 进项税额与库存的关系
  • 现金折扣不考虑增值税
  • 商品周转率公式
  • 加盖发票专用章有效什么意思
  • 电子发票已开出客户退款会计处理是怎样的?
  • 工程施工企业收到工程款,怎么做分录
  • 工程预付款的数量取决于
  • 股权投资如何记账
  • 公司账户美金入账后怎么做分录
  • 一般纳税人哪些项目可以简易征收
  • 费用分摊的分录
  • fedora lts
  • window10自带的软件有哪些
  • linux操作系统主要用来干嘛?
  • win10如何设置时间和日期
  • cocos2dx 3.3 + QT5.3制作游戏编辑器
  • 好好了解 英文
  • opencv人脸识别模型训练
  • 契税减免优惠政策2023年最新
  • 湖北生育登记网上服务大厅官网查询
  • 发票与报销内容不一样
  • 进项税额有哪些明细科目
  • 土地增值税可否免税
  • 销售哪些产品需办许可证
  • 云南2021高考改革
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设