Python正则表达式练习
1、验证手机号码:手机号码的规则是以1开头,第二位可以是34587,后面那9位就可以随意了。
示例代码如下:
text = "18570631587"
ret = re.match('1[34587]\d{9}',text)
print(ret.group())
>> 18570631587
而如果是个不满足条件的手机号码。那么就匹配不到了。示例代码如下:
text = "1857063158"
ret = re.match('1[34587]\d{9}',text)
print(ret.group())
>> AttributeError: 'NoneType' object has no attribute
2、验证邮箱:邮箱的规则是邮箱名称是用数字、数字、下划线组成的,然后是@符号,后面就是域名了。示例代码如下:
text = hynever@163.com
ret = re.match('\w+@\w+\.[a-zA-Z\.]+',text)
print(ret.group())
3、验证URL:URL的规则是前面是http或者https或者是ftp然后再加上一个冒号,再加上一个斜杠,再后面就是可以出现任意非空白字符了。示例代码如下:
text = http://www.baidu.com/
ret = re.match('(http|https|ftp)://[^\s]+',text)
print(ret.group())
4、 验证身份证:身份证的规则是,总共有18位,前面17位都是数字,后面一位可以是数字,也可以是小写的x,也可以是大写的X。示例代码如下:
text = "3113111890812323X"
ret = re.match('\d{17}[\dxX]',text)
print(ret.group())
5、 ^(脱字号):表示以...开始:
text = "hello"
ret = re.match('^h',text)
print(ret.group())
如果是在中括号中,那么代表的是取反操作.
6、 $:表示以...结束:
# 匹配163.com的邮箱
text = xxx@163.com
ret = re.search('\w+@163\.com$',text)
print(ret.group())
>> xxx@163.com
7、|:匹配多个表达式或者字符串:
text = "hello|world"
ret = re.search('hello',text)
print(ret.group())
>> hello
8、 贪婪模式和非贪婪模式:
贪婪模式:正则表达式会匹配尽量多的字符。默认是贪婪模式。
非贪婪模式:正则表达式会尽量少的匹配字符。
示例代码如下:
text = "0123456"
ret = re.match('\d+',text)
print(ret.group())# 因为默认采用贪婪模式,所以会输出0123456
>> 0123456
可以改成非贪婪模式,那么就只会匹配到0。示例代码如下:
text = "0123456"
ret = re.match('\d+?',text)
print(ret.group())
注:本文部分文字和图片来源于网络,如有侵权,请联系删除。版权归原作者所有!

猜你喜欢LIKE
相关推荐HOT
更多>>
python工程师常用的开发工具
一个优秀的IDE,最重要的就是在普通文本编辑之外,提供针对特定语言的各种快捷编辑功能,让程序员尽可能快捷、舒适、清晰的浏览、输入、修改代...详情>>
2022-11-08 11:28:00
Python蓝莓直播网站 :如何实现穷举搜索?
穷举搜索就是在整个搜索空间范围内尝试每一种可能性,直到找到目标值或者整个搜索空间都找完也没有找到目标值。最常见的穷举搜索就是线性搜索,...详情>>
2022-10-27 16:57:00
Python基础:常用知识点汇总
01下载与安装 官方宣布,2020年1月1日,停止Python2的更新,建议下载Python3。下载好以后,要进行环境变量配置,以Windows为例,在命令提示框...详情>>
2022-10-25 17:00:00
Python IDE推荐7个Python IDE
大多数情况你需要的是这几个包:language-python基本语法突出显示和片段支持,python-tools用于一些简易功能,如快速重构,autocomplete-python...详情>>
2022-10-18 17:02:00
python中文乱码的解决方法
在学习python蓝莓直播网站 中,很多同学会在蓝莓直播网站 过程中遇到乱码,有的小伙伴为了躲避中文乱码的问题甚至代码中不使用中文,注释和提示都用英文,我曾经也...详情>>
2022-10-13 16:28:00Python蓝莓直播网站 问答更多>>
新做蓝莓直播平台 分析需要学哪些软件?
新参加蓝莓直播平台 分析蓝莓直播网站 一般要多少钱?
新千锋教育蓝莓直播平台 分析包括哪些课程?
新python蓝莓直播网站 班哪个靠谱
新python线上蓝莓直播网站 选择哪里
新python蓝莓直播网站 怎么样?有必要参加蓝莓直播网站 吗
新Python蓝莓直播网站 费用大概多少?收费水平如下
Python面试题库 更多>>
Python中的pass语句是蓝莓直播平台 ?
怎样将字符串转换为小写?
怎么移除一个字符串中的前导空格?
python中的标识符长度能有多长?
Python区分大小写吗?
解释Python中的join()和split()函数
开班信息
北京校区
- 北京校区
- 大连校区
- 广州校区
- 成都校区
- 杭州校区
- 长沙校区
- 合肥校区
- 南京校区
- 上海校区
- 深圳校区
- 武汉校区
- 郑州校区
- 西安校区
- 青岛校区
- 重庆校区
- 太原校区
- 沈阳校区
- 北京校区
- 大连校区
- 广州校区
- 成都校区
- 杭州校区
- 长沙校区
- 合肥校区
- 南京校区
- 上海校区
- 深圳校区
- 武汉校区
- 郑州校区
- 西安校区
- 青岛校区
- 重庆校区
- 太原校区
- 沈阳校区
