几乎所有的编程语言都支持正则表达式。
字符串的模糊匹配技术。(基于一个规则去匹配字符串当中的内容)
只要是想在字符串当中找符合规则的字串,基本上都可以使用正则表达式。
正则表达式在python当中的应用,需要使用到re模块,使用前需要先导入,不需要安装。
一.正则表达式语法
1.表示单字符
单字符:即表示一个单独的字符,比如匹配数字用\d,匹配非数字使用\D,具体规则如下:
2.表示数量
如果要匹配某个字符多次,就可以在字符后面加上数量进行表示,具体规则如下:
3.表示边界
4.匹配分组
5.贪婪模式
贪婪模式:python里数据词默认是贪婪的,总是尝试匹配尽可能多的字符;
如下案例:匹配任意一个字符0次或者无数次,贪婪模式会尽可能匹配更多字符,无数次就是更多,那么这里匹配的结果就是所有字符。
string = 'aa27bc245'
res = re.search(pattern='.*', string=string)
print(res)
<re.Match object; span=(0, 9), match='aa27bc245'>
非贪婪模式:总是尝试匹配尽可能少的字符,在"*","?","+","{m,n}","{m,}"后面加上?,可以关闭贪婪模式。关闭贪婪模式之后,尽可能获取更少的,如下,就是获取到最少0个字符
string = 'aa27bc245'
res = re.search(pattern='.*?', string=string)
print(res)