作用:是用来匹配字符的一种工具,import re进行模块导入

注意:

本模块来自奇乐编程学院--10分钟快速掌握正则表达式,使用测试工具https://regex101.com/

一、限定符

1.   ?,前面字符出现0次或者1次   

2.  *  ,前面字符出现0次或者多次

3.  + ,前面字符出现一次以上

4.规定出现次数范围

规定两次以上

规定固定次数

5.匹配特定字符

6. \b ,决定匹配字符边界

二、“或”运算符

1.运用|来表示,要有括号

2.字符类,[    ],表示文本所取字符的范围。

开头加^代表除这些字符

三、元字符

1.\d+,数字字符,相当于[0-9]+。\D+,非数字字符

2.\w+,单词字符(英文,数字,下划线)。\W+,非单词字符

3.\s,tab字符和换行符。\S,非空白字符

4.    .*,任意字符不包含换行符。

5.^,匹配行首

6.$,匹配行尾

四、贪婪与懒惰匹配

       首先,正则表达式中的量词(如+*)默认是贪婪的,也就是尽可能匹配更多的字符。而使用?可以使量词变为懒惰模式,也就是尽可能匹配更少的字符。

       所以,<.+>中的+是贪婪的,它会匹配尽可能多的字符,直到最后一个>。例如,在字符串<div>test</div>中,<.+>会匹配整个<div>test</div>,因为+会一直匹配到最后一个>

        而<.+?>中的+?是懒惰模式,它会匹配尽可能少的字符,也就是在遇到第一个>时就停止匹配。所以同样的例子中,<.+?>会匹配到<div>,因为遇到第一个>就停止了。

五、总结

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐