正则表达式完整整理总结,带实例演示,强烈建议收藏!!!
正则表达式总结常用正则表达式匹配练习工具的网址:https://regex101.com/练习语言使用的是python\n表示换行,newline\r表示回车,return\t表示Tab\0表示空字符,none、NUll…\s表示所有空白字符\f表示换页字符,form-feed单个字符.:除换行以外所有字符,匹配换行符以外的任何单个字符[]:匹配集合中任意一个...
正则表达式总结
- 练习语言使用的是python
\n表示换行,newline\r表示回车,return\t表示Tab\0表示空字符,none、NUll…\s表示所有空白字符\f表示换页字符,form-feed
单个字符
-
.:除换行以外所有字符,匹配换行符以外的任何单个字符
-
[]:匹配集合中任意一个字符,常用的[abk]、[a-k]、[a-zA-Z]
-
[abk]:匹配a字符或者b字符或者k字符

-
[^abk]:匹配任意字符,除了a字符或者b字符或者k字符

-
[a-k]:匹配a到k之间的任意字符,包括a字符和k字符

-
[^a-k]:匹配任意字符,处理那些a到k之间的字符

-
[a-zA-Z]:匹配a-z或者A-Z之间的任意字符,你可以随意组合
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-H1ES1fTU-1587564416558)(media/Snip20200422_19.png)]](https://i-blog.csdnimg.cn/blog_migrate/147ff3c150406fa218b1b1cf7153850e.png)
-
[^a-zA-Z]:匹配除了a-z或者A-Z之间的任意字符,可以是数字、换行符、空格等等
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-p8I1MRqQ-1587564416560)(media/Snip20200422_20-1.png)]](https://i-blog.csdnimg.cn/blog_migrate/b66f0e6ff522229698c84f7c6d40d602.png)
-
-
\d:匹配任意的十进制数字(digit),相当于[0-9]
-
\D:匹配任意的非十进制的字符![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0mCKWwaH-1587564416563)(media/Snip20200422_22.png)]](https://i-blog.csdnimg.cn/blog_migrate/b00cb0adefa6f6e79bf964654d020b61.png)
-
\w:匹配任意的字母(word)、数字、中文或者下划线,相当于[a-zA-Z0-9_]![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-x83PDAoU-1587564416565)(media/Snip20200422_28.png)]](https://i-blog.csdnimg.cn/blog_migrate/ed9250ebee28b49645c1db11eb8da272.png)
-
\W:匹配字母、数字、中文或者下划线以外的任何内容![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UztGxptf-1587564416566)(media/Snip20200422_29-1.png)]](https://i-blog.csdnimg.cn/blog_migrate/64d989f25d58557dbbc92b1dc8c33876.png)
-
\s:匹配所有空白字符包,包括空格、tab、换行符…,等价于[ \f\n\r\t\v]
-
\S:匹配所有非空白
数量修饰
a*:匹配0个或者多个连续的a字符(>=0),例如a*表示字符串可以有0个a或者多个a![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-o1pQhkhN-1587564416571)(media/Snip20200422_32.png)]](https://i-blog.csdnimg.cn/blog_migrate/51a23c527b83a251d769f577779d8e22.png)
a+:匹配一个或者多个连续的a字符(>=1),即a*表示a字符至少出现一次![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uyhR1Ojr-1587564416572)(media/Snip20200422_33.png)]](https://i-blog.csdnimg.cn/blog_migrate/f080f4473059968ff0763207e5f87445.png)
a?:匹配a字符或者不匹配任何字符,即a字符可有可无![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bGJpGHQB-1587564416573)(media/Snip20200422_34.png)]](https://i-blog.csdnimg.cn/blog_migrate/6d84e6ebcab4e30d4b700e391638606c.png)
a{m}:精确匹配m个连续的a字符,中间有任何空格都不可以![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-H2PsK0Zh-1587564416574)(media/Snip20200422_35.png)]](https://i-blog.csdnimg.cn/blog_migrate/7c922b7f3e4d6fe89cd9cd7fecb22e37.png)
a{m,}:匹配至少m个连续的a字符![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kaedcLdK-1587564416574)(media/Snip20200422_37.png)]](https://i-blog.csdnimg.cn/blog_migrate/3d62906a956735a7be91712ec158053a.png)
a{m,n}:匹配m个和n个连续的a字符,包含m和n,即m、m+1、…、n-1、n个连续的a字符都可以![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zRijX9ZO-1587564416575)(media/Snip20200422_38.png)]](https://i-blog.csdnimg.cn/blog_migrate/705de2a342ff9b8502e4679a4e19ccee.png)
边界
^a:匹配任意一行的首字符必须是a,即任意一行以a字符开头![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zO5paMZa-1587564416576)(media/Snip20200422_39.png)]](https://i-blog.csdnimg.cn/blog_migrate/6c2823de316d489487edfe07fce47973.png)
a$:匹配任意一行的结尾最后字符必须是a,即任意一行以a字符结尾![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GXHY796E-1587564416577)(media/Snip20200422_40-1.png)]](https://i-blog.csdnimg.cn/blog_migrate/54259e189cf0e799617ab8febaed885b.png)
分组
(ab):匹配所有ab两个字符为一组,即ab为一组![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2vGgakY4-1587564416578)(media/Snip20200422_42.png)]](https://i-blog.csdnimg.cn/blog_migrate/39ce1dd73249512a56845fba5ab3743b.png)
(a|b):匹配表达式中的a部分或者b部分![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Lbdw2Vyc-1587564416581)(media/Snip20200422_44.png)]](https://i-blog.csdnimg.cn/blog_migrate/745d8239d4288a00380961273f07ee23.png)
贪婪模式和惰性模式
-
a.*b:贪婪模式,匹配a到b尽可能长的字符串,除了行终止符\n
-
a.*?b:惰性模式,匹配a到b尽可能短的字符串,匹配成功后,继续寻找下一个最短的“a到b”
Python中的正则
re.I:忽略大小写,insensitive(不敏感)re.M:多行匹配,multilinere.X:忽略空格re.S:单行匹配,该字符串可以认为是单行输入re.G:匹配所有的符合条件的字符串,告诉引擎在找到第一个匹配项后不要停止,而是继续直到找不到更多匹配项为止re.sub(正则表达式, 替换内容, 字符串)
更多推荐



所有评论(0)