上图施工计划,已完成专题:
1.数字专题
2.字符串专题
3.列表专题
4.流程控制专题
5.编程风格专题
6.函数使用专题
7.面向对象编程(上篇)
8.面向对象编程(下篇)
9.Python基础9之数据结构(上)
10.Python基础9之数据结构(下)
11.Python基础10之类、包、模块
正则使用需要掌握的主要知识,整篇文章的结构总结如下:
1 学习正则的价值
2 正则学习前的几个准备
Q1 字符 `r`是干啥的?
Q2 什么是一个原子操作?
Q3 怎么理解正则中的转义?
3 掌握最常用规则
情况1:最普通查找
情况2:使用通用字符
情况3:使用元字符
4 有个棘手的场景
5 学会提取子串的技能
6 使用捕获的注意事项
1 学习正则的价值
正则应用广泛。不仅在Python语言中使用,其他语言也都在用,并且不同语言间的正则语法极为相似。同时主流操作系统,尤其linux系统的命令窗口中,也会经常使用到正则。还有,Python的常用包如Pandas,也经常遇到正则。
不仅使用广泛,正则功能也很强大,还有书写简便,因此这项技能值得我们仔细研究和掌握。
2 正则学习前的几个准备
Q1 字符 r
是干啥的?
经常见过正则表达式前有一个字符 r
,它的作用是告诉解释器后面的一串是原生字符串,按照字面意思解释即可。如:
s1 = r'\n.*'
print(s1)
它告诉编译器s串第一个字符是\
,第二个字符是n
.打印的结果就是它本身:
\n.*
而如果不带前缀字符r
,即:
s2 = '\n.*'
print(s2)
解释器认为前两个字符\n
为转义字符,一个新行的意思,打印结果为一个换行加.*,如下所示:
.*
Q2 什么是一个原子操作?
微观世界中,如果定义原子是组成事物的最基本单元,那么就可理解为原子不能再分了。同理此处,正则的原子操作是指不能再被分割的正则表达式操作。
如正则中的+
指前面的一个原子操作出现至少1次。例如:66+
表示第一个字符为6,第二个字符6和第三个字符+联合起来表示至少出现1次字符6,因此综合起