之前小编还在说各位小伙伴们学习python的出错类型各种各样,轮到小编自己传文章的时候,都忘记了点击已审核,浪费了一小部分文章跟大家见面的时间,好在影响不是很大,小编很快就发现了这个疏忽。那么,我们最近在学习的 re.compile()处理选项时需要注意什么呢?接下来一起看看:
1、在re.compile()传入第二个参数可以实现匹配选项,如 re.VERBOSE 可以编写注释;
2、其它选项:re.IGNORECASE 或 re.I 是忽略匹配的大小写,re.DOTALL 是让点号能够匹配所有字符
3、re.compile()的第二个参数只能接受一个值,我们可以使用管道|将这些选项组合起来,绕过这些限制:
someRegex = re.compile('foo', re.I | re.DOTALL | re.VERBOSE)
这样做的效果就是希望正则匹配不区分大小写,同时句点字符匹配换行,可以添加注释。
最后给大家分享几个常用的正则表达式,均来自这里:
# 校验密码强度 ^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$ #包含大小写字母和数字的组合,不能使用特殊字符,长度在8-10之间 # 校验中文 ^[\u4e00-\u9fa5]{0,}$ # 由数字、26个英文字母或下划线组成的字符串 ^\w+$ # 校验E-Mail 地址 [\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])? # 校验18位身份z ^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$ # 校验日期 ^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$ # “yyyy-mm-dd“ 格式的日期校验,已考虑平闰年 # IP4 正则语句 \b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b # 提取URL链接 ^(f|ht){1}(tp|tps):\/\/([\w-]+\.)+[\w-]+(\/[\w- ./?%&=]*)? # 可在爬虫代码中使用 # 提取网页图片 \< *[img][^\>]*[src] *= *[\"\']{0,1}([^\"\'\ >]*) # 提取网页超链接 (]*)(href="https?:\/\/)((?!(?:(?:www\.)?'.implode('|(?:www\.)?', $follow_list).'))[^"]+)"((?!.*\brel=)[^>]*)(?:[^>]*)> # 匹配HTML标签 <\/?\w+((\s+\w+(\s*=\s*(?:".*?"|'.*?'|[\^'">\s]+))?)+\s*|\s*)\/?>
re.compile()处理选项时的注意点就只有3条,小伙伴们使用时一定要在心里默念呀~更多Python学习推荐:PyThon学习网教学中心。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)