正则表达式(python)

前言

主要从三个方面考察正则表达式的运用情况(基本元字符/常用正则表达式/用python re模块解决情况)

一.基本元字符

  • 问正则表达式的特殊字符都是什么意思

\b
\B
\w
\W
\d
\D
\s
\S
.
*
+
?
|

请把以上字符再去搜索一遍,看看到底是什么意思

  • 贪婪模式和非贪婪模式
  • 有哪些字符是需要\来转义的
  • 中文编码范围

二.常用正则表达式

这部分的表达式并不唯一,因为需求不同。

  • 手机号
^1[3-9]\d{9}$
^1[^0-2]\d{9}$

对手机号进行模糊处理,模糊中间四个数字

import re
phone = '18728147811'
# \1和\3指获取第一个分组和第三个分组匹配值
res = re.sub(r"(\d{3})(\d{4})(\d{4})", r"\1****\3", phone)
print(res)
#187****7811
  • 邮箱
"例如xiao_ming@999.com.cn"
^[A-Za-z0-9_-]+@[A-Za-z0-9_-]+(\.[A-Za-z0-9_-]+)+$
  • 用户名
"字母数字下划线支持中文4到12位"
^[A-Za-z0-9\u4e00-\u9fa5_]{4,12}$
  • 密码
下面是英语四六级考试网站的密码注册要求
"8-15位长度(区分大小写);密码中同时含有:大写字母、小写字母、数字和特殊字符"
"特殊字符有!@#$%^&*-_"
^(?=.*\d+)(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#%_-&\$\^\*])^.{8,15}$

总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值