检测合法邮箱
import re
m = re.match(r'^\w+@\w+.\w+$', 'email@example.com')
print(m)
<re.Match object; span=(0, 17), match='email@example.com'>
获取网站域名
import re
m = (re.findall(r'\w*?:?//([\w.]*)/?.*', 'https://csdn.net/') or [None, ])[0]
print(m)
csdn.net
获取文件路径
import re
import os
m = os.path.join(*re.findall(r'(.*?)[\\/]', 'C:/users\\Administrator/Desktop\\Edge.lnk'))
print(m)
C:/users/Administrator/Desktop
获取文件名
import re
import os
m = re.findall(f'.*{os.path.sep}(.*)', '/home/nebula/Desktop/Edge.desktop')
print(m)
m = m[0]
print(m.split('.')[-1])
print(m[:m.rindex('.')]if '.' in m else m)
['Edge.desktop']
desktop
Edge
匹配大陆手机号
import re
m = re.match(r'^1\d{10}$', '16330338888')
print(m)
<re.Match object; span=(0, 11), match='16330338888'>
获取网页参数
import re
m = 'https://www.baidu.com/s?ie=UTF-8&wd=csdn'
m = {k : v for k, v in (re.findall(r'(\w*)=([^&]*)', m.split('?')[-1])if '?' in m else[])}
print(m)
{'ie': 'UTF-8', 'wd': 'csdn'}
匹配大小写加数字高强度密码
import re
m =re.match(r'(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])[\x21-\x7e]{8,30}', '1Aaaaaaa')
print(m)
<re.Match object; span=(0, 8), match='1Aaaaaaa'>
本文含有隐藏内容,请 开通VIP 后查看