位置: 编程技术 - 正文

一个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)

  • 一般纳税人开普票税率是3%还是13%
  • 个人出租非住房房产税怎么计算
  • 公司之间往来款需要开收据吗
  • 建总账的注意事项
  • 其他业务活动包括
  • 月末收到一批b材料,结算凭证未到,估价50000
  • 政府补贴转给其他公司
  • 实收资本印花税是一年一交吗
  • 盈余公积补亏影响资产吗
  • 哪些电子发票可以没有发票章
  • 企业赠送客户产品如何账务处理
  • 增值税退税金额怎么算
  • 购买固定资产如何记账
  • bios设置的完整说法
  • 公司代扣代缴的保险费有哪些
  • 上个月多计提的工资怎么调整
  • 什么是进项税和销项税
  • 员工垫付款怎么做分录
  • 直接计入当期利润的利得,即企业非日常
  • 修改php.ini
  • 鸿蒙系统怎么设置导航键
  • 留存收益怎么计算,它属于企业的什么资金?
  • 增值税进项税额属于什么会计科目
  • 采购国产设备退税公告
  • 30个极致实用的东西
  • vite报错
  • 一般纳税人企业所得税税率多少
  • 如何计提加计抵减额分录
  • 销售费用期末余额
  • vue-nginx刷新404问题
  • 模型训练的过程是什么过程
  • 华为od测试岗机试需要怎么准备
  • uniapp开发app视频教程
  • 应收账款科目怎么看
  • 上月未记账,本月不能记账
  • 二手车征税税率减按多少税
  • 公司银行开户的一些资料是公司办公室保存还是财务保存
  • 固定资产盘盈为什么计入以前年度损益调整
  • 增值税纳税申报操作流程
  • 企业年度汇算清缴申报表填写
  • 营业收入小于利息收入
  • 外贸出口企业的税务风险
  • 研发失败能做加工企业吗
  • 什么是代缴代扣
  • 非正常户是黑名单吗
  • 速达建账套期初数据
  • 框架合同的印花税
  • 会计六大类会计科目
  • mysql存储过程查看权限
  • 印花税计入税金及附加科目吗
  • 备用金支出没有发票怎么办
  • 股权转让个人所得税怎么算
  • 增值税专用发票怎么开
  • 在建工程待摊支出结转
  • 住宿费开的增值税专用发票怎么记账
  • 原材料用于在建工程
  • 公司注销怎么做
  • 基建结束后该做哪些工作
  • 河道管理费和水利基金
  • 社保缴纳的时候可以用吗
  • 包装袋制版费
  • 房地产开发费用10%
  • 未发货先开发票
  • 企业初建
  • linux系统监控软件
  • Linux系统磁盘分配
  • linuxwindows差别
  • windows8应用商店用不了
  • from tkinter import
  • android工程目录
  • 批处理获取本地连接名称
  • 噩梦剧情
  • 仿百度首页html代码静态
  • 安卓开发者有多少
  • node cd
  • 福建电子发票开票流程?
  • 市直单位正职是市单位一把手吗
  • 五险一金不满一年可以领失业金吗
  • 电子增值税专用发票和纸质增值税专用发票的区别
  • 商品房增值税如何算
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设