设为首页 收藏本站
查看: 1162|回复: 0

[经验分享] perl正则表达式中的常用模式

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-12-29 08:00:00 | 显示全部楼层 |阅读模式
/pattern/ 结果. 匹配除换行符以外的所有字符x? 匹配 0 次或一次 x 字符串x* 匹配 0 次或多次 x 字符串,但匹配可能的最少次数x+ 匹配 1 次或多次 x 字符串,但匹配可能的最少次数.* 匹配 0 次或一次的任何字符.+ 匹配 1 次或多次的任何字符{m} 匹配刚好是 m 个 的指定字符串{m,n} 匹配在 m个 以上 n个 以下 的指定字符串{m,} 匹配 m个 以上 的指定字符串[] 匹配符合 [] 内的字符[^] 匹配不符合 [] 内的字符[0-9] 匹配所有数字字符[a-z] 匹配所有小写字母字符[^0-9] 匹配所有非数字字符[^a-z] 匹配所有非小写字母字符^ 匹配字符开头的字符$ 匹配字符结尾的字符\d 匹配一个数字的字符,和 [0-9] 语法一样\d+ 匹配多个数字字符串,和 [0-9]+ 语法一样\D 非数字,其他同 \d\D+ 非数字,其他同 \d+\w 英文字母或数字的字符串,和 [a-zA-Z0-9] 语法一样\w+ 和 [a-zA-Z0-9]+ 语法一样\W 非英文字母或数字的字符串,和 [^a-zA-Z0-9] 语法一样\W+ 和 [^a-zA-Z0-9]+ 语法一样\s 空格,和 [\n\t\r\f] 语法一样\s+ 和 [\n\t\r\f]+ 一样\S 非空格,和 [^\n\t\r\f] 语法一样\S+ 和 [^\n\t\r\f]+ 语法一样\b 匹配以英文字母,数字为边界的字符串\B 匹配不以英文字母,数值为边界的字符串a|b|c 匹配符合a字符 或是b字符 或是c字符 的字符串abc 匹配含有 abc 的字符串(pattern) () 这个符号会记住所找寻到的字符串,是一个很实用的语法。第一个 () 内所找到的字符串变成 $1 这个变量或是 \1 变量,第二个 () 内所找到的字符串变成 $2 这个变量或是 \2 变量,以此类推下去。/pattern/i i 这个参数表示忽略英文大小写,也就是在匹配字符串的时候,不考虑英文的大小写问题。\ 如果要在 pattern 模式中找寻一个特殊字符,如 "*",则要在这个字符前加上 \ 符号,这样才会让特殊字符失效下面给出一些例子:范例 说明/perl/ 找到含有 perl 的字符串/^perl/ 找到开头是 perl 的字符串/perl$/ 找到结尾是 perl 的字符串/c|g|i/ 找到含有 c 或 g 或 i 的字符串/cg{2,4}i/ 找到 c 后面跟着 2个到 4个 g ,再跟着 i 的字符串/cg{2,}i/ 找到 c 后面跟着 2个以上 g ,再跟着 i 的字符串/cg{2}i/ 找到 c 后面跟着 2个 g,再跟着 i 的字符串/cg*i/ 找到 c 后面跟着 0个或多个 g ,再跟着 i 的字符串,如同/cg{0,1}i//cg+i/ 找到 c 后面跟着一个以上 g,再跟着 i 的字符串,如同/cg{1,}i//cg?i/ 找到 c 后面跟着 0个或是 1个 g ,再跟着 i 的字符串,如同/cg{0,1}i//c.i/ 找到 c 后面跟着一个任意字符,再跟着 i 的字符串/c..i/ 找到 c 后面跟着二个任意字符,再跟着 i 的字符串/[cgi]/ 找到符合有这三个字符任意一个的字符串/[^cgi]/ 找到没有这三个字符中任意一个的字符串/\d/ 找寻符合数字的字符,可以使用/\d+/来表示一个或是多个数字组成的字符串/\D/ 找寻符合不是数字的字符,可以使用/\D+/来表示一个或是更多个非数字组成的字符串/\*/ 找寻符合 * 这个字符,因为 * 在常规表达式中有它的特殊意思,所以要在这个特殊符号前加上 \ 符号,这样才会让这个特殊字符失效/abc/i 找寻符合 abc 的字符串而且不考虑这些字符串的大小写

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-157697-1-1.html 上篇帖子: perl实现全组合的一种算法 下篇帖子: 《PERL高效编程》学习笔记(2)【关于数值上下文、字符串上下文】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表