漫谈正则表达式.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
漫谈正则表达式 1 1 2 正则意义——搜索 工作中搜索一类文件 开发中找到一段代码 运维中查找一行日志 程序中匹配一个邮箱 *.doc 2012??.log 使用通配符可以查找指定模式内容 1 3 最简单的正则 表达式: 能匹配的字符串: shy I am shy Luckyshy 123shy321 shy 1 4 最简单的正则 我只想匹配自己: 匹配的结果: \bshy\b I am shy Luckyshy 123shy321 shy 1 5 最简单的正则 \b \w \d () [] \W \s \S …… (?) (?=) (?!) \P{Inname} \p{Inname} 这些符号的意义? 那这些又是什么? \x{4e00}-\x{9fa5} \x80-\xff 再看看这几个呢? 2 6 正则表达式——字符 12个特殊的字符:$ ( ) * + . ? [ \ ^ { | 搜索它们自身需要在前面加反斜线来匹配。 字符组结构 [0-9] 数字0到数组9之间的任意一个 [a-z] 字母a到字母z的任意一个 [^shy] 除了字母shy的任意一个字符 [\u4e00-\u9fa5] 汉字中的任意一个汉字 [^a-z] 除了字母 a 到字母z的任意一个字符 [0-z] 匹配asicii码中0到z的其中一个字符 | 多选分支,或者关系 \1 \2 …反向引用 (\w) .*/\1 引用第一个捕获组的结果,用于匹配html的闭合标签 ab|cd a(b|c)d 匹配abcd还是abd,acd 2 7 正则表达式——模式 正则表达式定义:一个正则表达式通常被称为一个模式 (pattern),为用来描述或者匹配一系列符合某个句法规则的字符串。 高级正则离不开模式 . 除换行以外的其他任意字符 \s 空白字符 \S 除空白字符以外的任意字符 \w 字母、数字、下划线 \W 除了字母、数字、下划线以外的任意字符 \d 数字 0-9 \D 除了数字之外的任意字符 \b 单词边界 ^ 字符串的开始 $ 字符串结束 * 0到无数次 + 1到无数次 ? 0或者1次 {n} 重复N次 {n,} 重复至少N次 {n,m} n到m次 [] 字符组,字符范围 () 捕获组(子表达式) 2 8 正则表达式——位置 表达式: 匹配: 表达式: 匹配: “^”代表字符串的开头 “$”代表字符串的结尾 ^shy Shy$ shy is Shy. shy123Shy Shy is shy. Hi,shy! shy is Shy shy123Shy Shy is shy. Hi,shy! ^Shy$ 2 9 正则表达式——选择 方括号“[ ]”匹配指定一堆字符中的一个。 例子说明一切 ^[a-z]hy$ :why shy ^[A-Za-z]hy$ :why Why shy ^[uvwxyz]hy$ :why zhy yhy [a-zA-Z0-9_.-] :email [a-zA-Z0-9.-_] :not email(;?[]…) 2 10 正则表达式——重复 “+” 表示前一字符模式可以被重复1次或n次。 “*” 表示前一字符模式可以被重复0次或n次。 “{x,y}”表示前一字符模式可以被重复x到y次。 “{x,}” 表示前一字符模式可以被重复至少x次。 例子说明一切 ^go+gle$ :gogle google gooooooooooogle ^g[aeiou]+gle$ :gogle geagle gaeiouaeiougle ^go*gle$ :ggle google gooooooooooogle ^go{2,4}gle$ :google gooogle goooole ^go{2,}gle$ :google gooogle goooole gooooole … ^(shy )*is( shy)*$ :shy is shy shy shy 2 11 正则表达式——分支 分支“|”用来指定几个规则只要匹配一个规则即成匹配。 例子说明一切 ^com$|^org$|^net$ :com org net ^shy.(com|org|net)$ : shy+net shy$net ^go*gle$ :ggle google gooooooooooogle ^go{2,4}gle$ :google gooogle goooole ^go{2,}gle$ :google gooogle goooole gooooole … ^(shy )*is( shy)*$ :shy is shy shy shy 3 12 正则深入——起源 1

文档评论(0)

benzei244572 + 关注
实名认证
内容提供者

建筑工程师持证人

没啥好说的额

领域认证该用户于2024年10月16日上传了建筑工程师

1亿VIP精品文档

相关文档