import re
#元字符
‘’’
. 除 换行符 以外的 任意字符
^ 不在原子表中,代表匹配开始位置
$ 匹配结束位置
- 前面的原子 重复出现 0次、1次、多次
? 前面的原子 重复出现 0次、1次
- 前面的原子 重复出现 1次、多次
{n} 前面这个原子恰好出现n次
{n,} 前面这个原子至少出现n次
{n,m} 前面这个原子至少出现n次,最多出现m次
| 模式选择符或
() 模式单元
‘’’
string = “taoyunjiaoyu”
pat = “tao.un” #提取几个任意字符,就用几个 .
result = re.search(pat,string)
print(result)
‘’’
<re.Match object; span=(0, 6), match=‘taoyun’>
‘’’
string = “taoyunjiaoyu”
pat = “^tao.un”
result = re.search(pat,string)
print(result)
‘’’
<re.Match object; span=(0, 6), match=‘taoyun’>
‘’’
string = “taoyunjiaoyu”
pat = “^ao.un”
result = re.search(pat,string)
print(result)
‘’’
None
‘’’
string = “taoyunjiaoyu”
pat = “ao.un”
result = re.search(pat,string)
print(result)
‘’’
<re.Match object; span=(1, 6), match=‘aoyun’>
‘’’
string = “taoyunjiaoyu”
pat = “ao…$”
result = re.search(pat,string)
print(result)
‘’’
<re.Match object; span=(8, 12), match=‘aoyu’>
‘’’
string = “taoyunjiaoyu”
pat = “tao*”
result = re.search(pat,string)
print(result)
‘’’
<re.Match object; span=(0, 3), match=‘tao’>
‘’’
string = “taoyunjiaoyu”
pat = “tao.*”
result = re.search(pat,string)
print(result)
‘’’
<re.Match object; span=(0, 12), match=‘taoyunjiaoyu’>
‘’’
string = “taoyunjiaoyu”
pat = “tao.+”
result = re.search(pat,string)
print(result)
‘’’
<re.Match object; span=(0, 12), match=‘taoyunjiaoyu’>
‘’’
string = “taoyunjiaoyu”
pat = “taoyun?”
result = re.search(pat,string)
print(result)
‘’’
<re.Match object; span=(0, 6), match=‘taoyun’>
‘’’
string = “taoyunjiaoyu”
pat = “taoyun+”
result = re.search(pat,string)
print(result)
‘’’
<re.Match object; span=(0, 6), match=‘taoyun’>
‘’’
string = “taoyunjiaoyu”
pat = “yun{4}”
result = re.search(pat,string)
print(result)
‘’’
None
‘’’
string = “taoyunnnjiaoyu”
pat = “yun{1}”
result = re.search(pat,string)
print(result)
‘’’
<re.Match object; span=(3, 6), match=‘yun’>
‘’’
string = “taoyunnnjiaoyu”
pat = “yun{1,}”
result = re.search(pat,string)
print(result)
‘’’
<re.Match object; span=(3, 8), match=‘yunnn’>
‘’’