美文网首页
Java正则表达式之零宽度断言(预搜索).md

Java正则表达式之零宽度断言(预搜索).md

作者: zivxia | 来源:发表于2019-11-04 19:38 被阅读0次

零宽度断言(预搜索)

  • 只进行子表达式的匹配,匹配内容不计入最终的匹配结果,是零宽度。
  • 这个位置应该符合某个条件。判断当前位置的前后字符,是符合指定的条件,但不匹配前后的字符。是对位置的匹配。
  • 正则表达式匹配过程中,如果子表达式匹配到的字符内容,而非位置,并被保存到最终的匹配结果中,那么就认为这个子表达式是占有字符的;如果子表达式匹配的仅仅是位置,或者匹配的内容并不保存到最终的匹配结果中,那么就认为这个子表达式是零宽度的。占有字符还是零宽度,是针对匹配的内容是否保存到最终的匹配结果中而言的。
符号 名字 描述
reg(?=exp) 零宽度正先行断言 reg匹配的内容后面内容满足exp规则
reg(?!exp) 零宽度负先行断言 reg匹配的内容后面内容不满足exp规则
(?<=exp)reg 零宽度正后发断言 reg匹配的内容前面满足exp规则
(?<!exp)reg 零宽度负后发断言 reg匹配的内容前面内容不满足exp规则

下面来分别说下,这几个的用法

reg(?=exp)
image.png

匹配到H,H是在8的前面,且只匹配一个字符

reg(?!exp)

占有字符匹配规则与reg(?=exp)相反,


image.png

o和d之后都不是字母和数字,所以匹配成功

(?<=exp)reg
image.png

\s匹配到World前的空格,\w{5}匹配到World

(?<!exp)reg

占有字符匹配规则与(?<=exp)reg相反,


image.png

相关文章

  • Java正则表达式之零宽度断言(预搜索).md

    零宽度断言(预搜索) 只进行子表达式的匹配,匹配内容不计入最终的匹配结果,是零宽度。 这个位置应该符合某个条件。判...

  • 零宽度断言(前后预查)

    "(lalala" "(lalala)" [1] "lalala" 简写描述含义?=...正预测先行断言捕获前面的...

  • 正则表达式还有一些细节

    1.关于\b的概念,详细分析 2.零宽断言(也叫环视、预搜索等) 3.正则引擎: 最近在看《精通正则表达式》(虽然...

  • 正则表达式笔记(三)

    边界 断言也被称做零宽度断言(zero-widthassertion)。零宽度断言不匹配字符,而是匹配字符串中的位...

  • 零宽断言

    今天我们来讲一下正则 零宽断言还有其他的名称,例如"环视"或者"预搜索","预查" 等等 作用: 作用是给指定位置...

  • Java学习笔记 - 第026天

    每日要点 正则表达式 例子1:零宽正向先行断言、零宽负向先行断言、零宽正向后行断言、零宽负向后行断言 异常 自定义...

  • 浅谈正则表达式(中)

    本节我们继续接着浅谈正则表达式(上)来讲正则表达式的其他使用。 零宽断言 断言:俗话的断言就是“我断定什么什么”,...

  • CocosCreator3.x开发笔记8: Invalid re

    在iOS下运行报错,是因为正则不支持 因为ios不支持零宽断言 什么是零宽断言? 粗略总结:零宽断言是正则表达式中...

  • 正则表达式的先行断言(lookahead)和后行断言(lookb

    正则表达式的先行断言和后行断言一共有4种形式:(?=pattern) 零宽正向先行断言(zero-width po...

  • 正则表达式 学习

    参考:正则表达式30分钟入门教程 元字符 字符转义 分枝条件 分组 向后引用 零宽断言 负向零宽断言 贪婪和懒惰 ...

网友评论

      本文标题:Java正则表达式之零宽度断言(预搜索).md

      本文链接:https://www.haomeiwen.com/subject/mjddbctx.html