python note 15 正则表达式
# 正则表达式 只和字符串打交道
# 正则表达式的规则
# 规则 字符串 从字符串中找到符合规则的内容
# 字符组 : [] 写在中括号中的内容,都出现在下面的某一个字符的位置上都是符合规则的
# [0-9] 匹配数字 # [a-z] 匹配小写字母 # [A-Z] 匹配大写字母 # [8-9] # [a-zA-Z] 匹配大小写字母 # [a-zA-Z0-9] 匹配大小写字母+数字 # [a-zA-Z0-9_] 匹配数字字母下滑线
# 元字符
# \w 匹配数字字母下滑线 word关键字 [a-zA-Z0-9_] # \d 匹配所有的数字 digit [0-9] # \s 匹配所有的空白符 回车/换行符 制表符 空格 space [\n\t ]# 匹配换行符 回车 \n# 匹配制表符 tab \t# 匹配空格 # \W \D \S 和\w \d \s取反# [\s\S] [\d\D] [\w\W]是三组全集 意思是匹配所有字符 # \b 表示单词的边界
# ^ $
# ^ 匹配一个字符串的开始 # $ 匹配一个字符串的结束 # . 表示匹配 除换行符之外的所有字符 # [] 只要出现在中括号内的内容都可以被匹配 # [^] 只要不出现在中括号中的内容都可以被匹配 # 有一些有特殊意义的元字符进入字符组中会回复它本来的意义 : . | [ ] ( ) # a|b 或 符合a规则的或者b规则的都可以被匹配# 如果a规则是b规则的一部分,且a规则比b规则要苛刻/长,就把a规则写在前面# 将更复杂的\更长的规则写在最前面 # () 分组 表示给几个字符加上量词约束的需求的时候,就给这些量词分在一个组
# 量词
# {n}表示 这个量词之前的字符出现n次 # {n,} 表示这个量词之前的字符至少出现n次 # {n,m} 表示这个量词之前的字符出现n-m次 # ? 表示匹配量词之前的字符出现 0次 或者 1次 表示可有可无 # + 表示匹配量词之前的字符出现 1次 或者 多次 # * 表示匹配量词之前的字符出现 0次 或者 多次
# 练习题
# 匹配整数 \d+ # 匹配小数 \d+\.\d+ # 匹配小数或者整数# \d+\.\d+|\d+# \d+(\.\d+)? # 匹配身份证号码 : [1-9]\d{16}[\dx]|[1-9]\d{14}# [1-9]\d{14}(\d{2}[\dX])?# 正则表达式的匹配特点 : 贪婪匹配 # 它会在允许的范围内取最长的结果 # 非贪婪模式/惰性匹配 : 在量词的后面加上?# .*?x 匹配任意非换行符字符任意长度 直到遇到x就停止
# 关于字符串挪到python中的转义的问题 : 只需要在工具中测试完毕,确认可以匹配上之后,挪到python中在字符串的外面加上r,r''即可
# print(r'\\n') # print(r'\n')
#匹配年月日日期 格式2018-12-8
^[0-9]\d{0,3}-(1[0-2]|0?[1-9])-(3[01]|[12]\d|0?[1-9])$
#匹配qq号
[1-9]\d{4,11}
#11位电话号码
1[3-9]\d{9}
#长度为8-10位的用户密码:包含数字字母下划线
\w{8,10}
#匹配验证码:4位数字字母组成
[\da-zA-Z]{4}
#匹配邮箱地址
[0-9a-zA-Z][\w\-.]+@[a-zA-Z0-9\-]+(\.[a-zA-Z0-9\-]+)*\.[A-Za-z0-9]{2,6}
转载于:https://www.cnblogs.com/P-Z-W/p/10777064.html
python note 15 正则表达式相关推荐
- Python系列15——正则表达式
目录 一.什么是正则表达式 二.正则表达式的要素与语法 1.普通字符 2.特殊字符 (1)非打印字符 (3)重复匹配符 3.正则表达式的逻辑与分组 4.正则表达式的函数 (1)findall (2)s ...
- Python学习15 正则表达式1
网址 正则表达式测试网址:https://regex101.com/ 概述 正则表达式: 正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母) ...
- [Python]网络爬虫(七):Python中的正则表达式教程(转)
接下来准备用糗百做一个爬虫的小例子. 但是在这之前,先详细的整理一下Python中的正则表达式的相关内容. 正则表达式在Python爬虫中的作用就像是老师点名时用的花名册一样,是必不可少的神兵利器. ...
- 【Python笔记】正则表达式
正则表达式 行定位符 元字符 限定符 字符类 排除字符 选择字符 转义字符 分组 在 Python 中使用正则表达式语法 行定位符 行定位符就是用来描述子串的边界. "^" 表示行 ...
- python进阶18正则表达式
原创博客链接:python进阶18正则表达式 正则基础知识 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ^`:匹配行首 `$`:匹配结尾 `*`:( ...
- Day 15 正则表达式
Day 15 正则表达式 1.什么是正则表达式 正则表达式是让复杂的字符串处理变得更加简单的工具 2.正则语法 from re import fullmatch,search,findall # 用之 ...
- 站长在线零基础Python完全自学教程20:在Python中使用正则表达式完全解读
欢迎你来到站长学堂,学习站长在线出品的在线课程<零基础 Python完全自学教程>今天给大家分享的是第20课< 在Python中使用正则表达式完全解读>.本节课是一个大课,我分 ...
- 《Python进阶系列》十六:详解Python中的正则表达式
正则表达式 概述 正则表达式为高级的文本模式匹配.抽取.与/或文本形式的搜索和替换功能提供了基础.简单地说,正则表达式是一些由字符和特殊符号组成的字符串,它们描述了模式的重复或者表述多个字符,于是正则 ...
- Python 字符串及正则表达式
字符串是所有编程语言在项目开发过程中涉及最多的一个内容.大部分项目的运行结果,都需要以文本的形式展示给客户,比如财务系统的总账报表,电子游戏的比赛结果,火车站的列车时刻表等. 5.1 字符串常用操作 ...
最新文章
- 加油!打工人!打工人分析简报
- 百融金服榕树_百融金服榕树成为拉动新金融行业增长的主力军
- debian安装emacs23
- DockerSwarm 微服务部署
- 鞭策你一辈子的好文章
- python中str函数_一文让你彻底搞懂Python中__str__和__repr__?
- Java语法基础50题训练(下)
- 舰r4月28服务器维护,崩坏3 11月28日版本更新维护通知
- 业务爆发式增长,音视频服务如何做好质量监控与优化?
- Ubuntu应用Wireshark找不到interface的解决办法
- SHELL中变量字串中包含$时怎么办?
- 获取2个集合ListT的共同元素
- EZ-webshell
- 压缩文件暴力破解(免费党的快乐)
- Cocos Creator AnySDK支付问题
- Pta题目集:汽车加油问题 (20 分)
- Excel表格转到Word中,保持表格不变形,不超边缘纸张范围
- 激活synopsys命令
- MATLAB之牛顿下山法
- html5如何快速选择工具使用技巧,写给PS新手们 五种快速抠图技巧连连看