开发者学堂课程【Python入门 2020年版:正则表达式介绍】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/639/detail/10441
正则表达式介绍
内容介绍:
一、 介绍
二、 特点
三、 Python 中的正则表达式
一、介绍
正则表达式是一个特殊的字符序列,计算机科学的一个概念。通常被用来检索、替换那些符合某个模式(规则)的文本。
许多程序设计语言都支持利用正则表达式进行字符串操作。在 Python 中需要通过正则表达式对字符串进行匹配的时候,可以使用 re 模块。
re 模块使 Python 语言拥有全部的正则表达式功能。
1. 查找:查找x中e的位置,该实例中 x = ‘hello’
In[3]: x.find(
‘e’)
Out[3]:1
2. 替换:将 y 中的 o 全部替换成 x,就变成了‘gxxd’
In[4]: y = 'good'
In[5]: y.replace( 'o' , 'x ')out[5]: 'gxxd'
二、特点
1. 灵活性、逻辑性和功能性非常强。
2. 可以迅速地用极简单的方式达到字符串的复杂控制。
3. 对于刚接触的人来说,比较晦涩难懂。
三、Python 中的正则表达式
与大多数编程语言相同,正则表达式里也使用“\”作为转义字符,这就可能造成反斜杠困扰。
假如你需要匹配文本中的字符“\”,那么使用编程语言表示的正则表达式里将需要4个反斜杠\:前两个和后两个分别用于在编程语言里转义成反斜杠,转换成两个反斜杠后再在正则表达式里转义成一个反斜杠。
x = 'hello\\nwor1d'
输出的结果为:hello\nworld
第一个参数就是正则匹配规则
第二个参数表示需要匹配的字符串
Python 里的原生字符串很好地解决了这个问题,有了原生字符串,你再也不用担心是不是漏写了反斜杠,写出来的表达式也更直观。
在 Python 字符串前面添加Р即可将字符串转换成为原生字符串。
m = re.search( '\\\\',x)
#match 和 search 方法
print(m)
search 和 match 方法的执行结果是一个 Match 类型的对象
输出的结果为:<re.Match object; span=(5,6), match=' \\'>