正则表达式-零宽断言

捕获###

(exp):匹配并且捕获exp表达式的内容,捕获内容存档在全局变量$1-$99里面。
(?<name>exp):匹配并且捕获exp表达式的内容,捕获内容存档在$+{name}里面。
(?:exp):匹配但并不捕获exp,也不给其分配变量。

零宽断言###

(?=exp):匹配exp前面的内容。如$string = 'singkkksingingk', $string =~ /sing(?=ing)/,匹配的是第二个sing。
(?<=exp):匹配exp后面的内容。如$string = 'hellomen women',$string =~ /(?<=wo)men/g,匹配women。
(?!exp):匹配后面跟的不是exp的内容。如$string = 'singkkksingingkkk';$string =~ /sing(?!ing)/,则匹配的是第一个sing。
(?<!exp):匹配前面内容不是exp的内容。$string = 'hellomen women', $string =~/(?!wo)men/,匹配的则是hellomen。

懒惰匹配

*?        重复任意次,但尽可能少重复
+?        重复1次或更多次,但尽可能少重复
??        重复0次或1次,但尽可能少重复
{n,m}?      重复n到m次,但尽可能少重复
{n,}?        重复n次以上,但尽可能少重复

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在使用正则表达式时,有时我们需要捕获的内容前后必须是特定内容,但又不捕获这些特定内容的时候,零宽断言就起到作用了。...
    SecondRocker阅读 5,156评论 0 5
  • 零宽 零宽说的是这个表达式不匹配任何字符,只匹配一个位置 断言 我要匹配的字符串一定要满足这个条件 一下采用pyt...
    Mr_Normal阅读 236评论 0 1
  • 注:本篇文章只为方便查看,特此保留,如有冒犯,敬请谅解!!! 本文目标 30分钟内让你明白正则表达式是什么,并对它...
    阿杰Alex阅读 1,516评论 0 10
  • 正则表达式到底是什么东西?字符是计算机软件处理文字时最基本的单位,可能是字母,数字,标点符号,空格,换行符,汉字等...
    狮子挽歌阅读 2,191评论 0 9
  • 正则表达式 1.常用的元字符 代码 说明 . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字 \s...
    Sweet苗阅读 398评论 0 0