位置: 编程技术 - 正文

一个perl扩展正则表达式代码分析(perl keys)

编辑:rootadmin
根据perlre文档的说明,一点一点解释。 首先是/x,用这个来去除regex里的空格,不然的话写在一行太难看懂了; 然后是^,表示从最开头开始; 然后是(?:,这个表示本括号不记入反向引用$&中; 然后是((?:d{1,3}.){3}d{1,3}),同样里面一个(?:,也就是说这一行匹配一个ip,并计为$1; 然后是(?=,这个表示在上面那行ip的正则后面必须出现符合本括号定义,同样也不计入$&(术语叫”零宽肯定前向断言”是吧?); 然后一个隔开ip的|; 然后是(?!,这个表示本括号内的东西绝对不能出现,同样也不计入$&(术语叫”零宽否定前向断言”是吧?); 然后是1,这个就是前面捕获的$1,跟上行解释的断言合在一起,就是|后面不能有和前面匹配的ip重复; 然后是(?1,这个表示前面捕获$1的正则表达式,也就是不重复ip的情况下,继续捕获新ip; 然后是),这个)闭合到|前面的(?:,也就是说|ip可以重复多个; 然后是z,这个是字符串边界,相当于单行里$的作用,在本例中可以互换,用在这里,就是为了让(?!1)的检查一直执行到最后; 然后是),闭合(?=; 然后是|和),这里闭合到^(,表示符合不重复ip条件的ip|格式不断正则匹配; 然后是(?1)$,定义最后一个ip,使用和$1相同的正则,也就是字符串至少要有一个ip。 OK,解释完毕。其实,从后往前看,反而清晰一些~~ 另:perlre中在(??{CODE})段的表述中有如下一段话“In perl 5..x and earlier, because the regex engine was not re-entrant, delayed code could not safely invoke the regex engine either directly with “m//” or “s///”), or indirectly with functions such as “split”.”,而(?R)和(??{CODE})做的是类似而简单的任务,所以如果linux发行版里带的perl版本不够高的话,这里就不能用(?1)的简单写法,需要自己再写一遍了。可以这么判断:

推荐整理分享一个perl扩展正则表达式代码分析(perl keys),希望有所帮助,仅作参考,欢迎阅读内容。

一个perl扩展正则表达式代码分析(perl keys)

文章相关热门搜索词:perl在文件中加入几行,perl-v,perl chmod,perl chmod,perl -ne,perl -ne,perl-v,perl -ne,内容如对您有帮助,希望把文章链接给更多的朋友!

perl实现blog备份的脚本代码 之前总不重视自己的博客,上回一丢才心疼,现在重视起来,决定定期备份sql。写个小脚本如下:#!/usr/bin/perlusewarnings;usestrict;useMySQL::Backup;useMail::Sender;o

perl中子程序中参数的两种引用(传递)方式介绍 下面是一个例子:usestrict;#这里是两个数组my@i=('1','2','3');my@j=('a','b','c');#在进行处理之前,我们把他们先打印出来,看一看他们的样子print"Inmainprogrambefor

perl 指定长度并生成一个随机的DNA序列的脚本代码 #!/bin/perlusestrict;usewarnings;#进行定义my@dna;my$dna_length;my$newbase;my$i=0;print"pleaseinputtheDNAlengthn";chomp($dna_length=);while($i$dna_length){#从四个碱基中随机选取一个my(@

标签: perl keys

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

上一篇:perl 模块打包加入外部依赖程序(perl package)

下一篇:perl实现blog备份的脚本代码(perl -pe)

  • 融资租赁的两种模式
  • 筹建期的收入要交企业所得税吗
  • 怎么免费用别人的网
  • 员工在外出差的说说
  • 企业的净资产包括实收资本吗
  • 个体户核定双定户是否可以年度汇算清缴
  • 高新企业如何申报纳税
  • 小规模纳税人可以开1%的专票吗
  • 小规模纳税人印花税是季报还是月报
  • 出口货物的销售额怎么算
  • 债务重组损失计算公式
  • 事业单位上级拨入资金属于什么科目
  • 党组织专项经费项社区服务队项目简介
  • 单位买另一单位银行承兑汇怎样入账?
  • 股票回购后多久注销
  • 网络招聘合同
  • 第二年缴纳税控盘服务费入什么科目?
  • 端午节给员工发福利说什么
  • 审计调账后企业怎么处理
  • 普票需要缴纳印花税吗
  • 实收资本印花税按次还是按年
  • u盘的重装系统
  • 流动资产固定资产和无形资产都是资产类账户
  • 在公司预支费用怎么写单据
  • 非货币性资产交换的会计处理
  • 银行存款日期和起息日期不一样
  • css 栅格
  • 电脑右下角的小三角怎么弄出来
  • hipsdaemon.exe是什么
  • 临时用工怎样做账
  • 核定征收注意事项
  • 长期股权投资投资收益计算
  • php simple html dom parser
  • 图像融合名词解释
  • 非征期不能抄报
  • 编译和链接的区别是什么
  • google map
  • win10本地模式
  • 制造费用主要核算项目
  • 企业的营业税金及附加
  • python字符串中变量替换
  • 事业结余是事业单位当年全部收支相抵后的余额
  • 差旅费报销可以直接从公账转到个人账户吗
  • 学电脑哪个网站比较好
  • 使用时间
  • dedecms转其他cms
  • 进项与销项区别
  • 生产成本明细账t型账
  • 资产减值损失的借贷方向
  • 会计科目是怎么来的
  • php出现错误代码怎么办
  • 内账中采购另付的税点算成本还是费用
  • 撤销税务局
  • 酒店客房成本计算公式
  • 工会费可以发现金吗
  • 企业的哪些支出不得列入成本费用原因
  • 以股权入资该怎么办
  • 汽车销售公司办理贷款重点调查哪些
  • 分支机构可不可以不建账合并到总机构?
  • 企业购进的固定资产
  • 法人能去税务局开个人发票吗
  • 其他债权投资减值准备是什么科目
  • win10预览版21277
  • win10用浏览器
  • win10微软在哪
  • win10 自带
  • win7便签在哪里找回来
  • win7 c盘打不开
  • win7开始菜单没有搜索框
  • 那些年的我们什么意思
  • ajax怎么用
  • vue中的组件通信
  • unity3d课程
  • Android Studio:adb not responding
  • 安卓动画不流畅
  • js命名函数
  • jquery插件使用
  • 重大税务违法案件一案双查标准
  • 山西省税务局政审县级还是市级的
  • 自助办税服务厅怎么用
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设