正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。
Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。
re 模块使 Python 语言拥有全部的正则表达式功能。
- re.match方法
- re.search方法
- re.findall方法
re.match方法
re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。
re.search方法
re.search 扫描整个字符串并返回第一个成功的匹配。
re.findall方法
在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的,则返回空列表。
group([group1, …]) 方法用于获得一个或多个分组匹配的字符串,当要获得整个匹配的子串时,可直接使用 group() 或 group(0);
限定符 | 释义 |
---|---|
. | 匹配除换行符 \n 之外的任何单字符 |
* | 匹配前面的子表达式零次或多次 |
? | 匹配前面的子表达式零次或一次 |
str='你好,python,很高兴认识你!'
result=re.match('你好(.*)',str).group()
result_match=re.search('py(.*)',str).group()
result_findall=re.findall('py(.*)',str)
print(result)
print(result_match)
print(result_findall)
out:
你好,python,很高兴认识你!
python,很高兴认识你!
['thon,很高兴认识你!']
在match和search中需要附加group方法,否则返回的是对象
result=re.match('你好(.*)',str)
out:
<_sre.SRE_Match object; span=(0, 17), match='你好,python,很高兴认识你!'>
若要匹配限定符需要加 \