位置: 编程技术 - 正文

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

  • 什么是进项税额转出
  • 退个税手续费增值税怎么计算
  • 代第三方收取的款项作为什么处理
  • 购买私募基金有风险吗
  • 代收款需要开票吗
  • 取得的增值税专用发票能否盖付讫章
  • 小规模纳税人增值税税率
  • 本月进项留抵会计分录
  • 货款和发票金额不符
  • 房产税怎么计算的
  • 计提汇算清缴涉及到不是当年费用怎么记账
  • 所得税季报填写说明
  • 公户批量扣费是啥意思
  • 个人如何申报初级医师职称
  • 收入冲减费用
  • 实际出资和名义出资
  • 公益性捐赠所得税处理
  • 处置交易性金融资产的交易费用计入
  • 多发的工资可以从下月扣除吗
  • 计算工业总产值指数
  • 小型微利企业的税收政策
  • 房屋出租预收租金房产税纳税义务发生时间
  • 其他业务收入不影响营业利润
  • mac怎么设置默认程序
  • 拆迁补偿收入如何纳税
  • 为什么u盘里的文件无法删除
  • 王者营地怎么转移到安卓系统
  • 联营企业分得的利润应计入
  • php中td
  • 收到借款利息会计科目
  • 安装了sklearn调用却找不到
  • 罗马湖在哪
  • 索洛维茨在哪
  • 单目测距精度
  • 减免增值税附加税也一起减免吗
  • 用jsp实现用户登录验证
  • 成品油发票如何下载库存
  • 刚成立的新公司怎么报税
  • 零余额账户什么时候开始停用
  • 数据库帮助文档
  • sql实例命名规则
  • 清算汇缴报表填写范本
  • 劳务派遣的开票税点是多少
  • 增值税发票扩版申请说明
  • 出口销售收入计算公式
  • 劳务分包的形式完成施工任务
  • 合伙制律师事务所和个人律师事务所
  • 个税如何确认申报
  • 计提工资是计提哪个月的
  • 其他应收款期末借方余额表示什么意思
  • 企业因受疫情影响导致停工停产的
  • 顾客抽奖奖项名称
  • 注册资本金印花税什么时候缴纳
  • 公司员工的电话费可以做费用吗
  • 购置固定资产进项税处理的变迁
  • 社保个人部分应该做到哪个科目
  • 销售费用明细科目里有什么
  • mysql性能比较
  • win7电脑一键关机快捷键
  • wp_official_1.1.3.apk软件下载
  • ubuntu20.10
  • win7安装远程桌面组件
  • linux 的ll
  • grep正则表达式运用举例
  • win7哪些系统文件可以删除
  • linux与windows
  • qt配置opengl
  • android view详解
  • unity程序开发
  • 利用python进行爬虫
  • Python下的慢
  • 轻松搞定是什么短语
  • jquery控制样式
  • android基于linux还是unix
  • mac解析域名
  • 进项税额有哪些明细科目
  • 进口设备需要资质吗
  • 滞留票税务局会罚款多少
  • 中国税务网络版
  • 纳税申报期限和税款缴纳期限一样吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设