Python基础最难知识点:正则表达式(详细使用步骤)

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途

正则表达式,简称regex,是文本模式的描述方法。你可以在google上搜索regex或者regexp获得非常多的学习资料。这篇短文介绍在python脚本中使用正则表达式的步骤:

1、导入re模块

Python中所有正则表达式的函数都在re模块中,可以在交互式环境或者脚本文件中输入以下代码。导入该模块:

import re

2、创建正则表达式对象

向re.compile()传入一个表示正则表达式的字符串值,它将返回一个Regex对象。例如要创建一个Regex对象来匹配电话号码模式,可以输入以下代码:

phoneMatch = phoneNumRegex.search(’My number is415-555-4242’)

此时phoneNumRegex就包含了一个Regex对象

Python基础最难知识点:正则表达式(详细使用步骤)_第1张图片

3、匹配Regex对象

Regex对象中的search()方法查找传入的字符串,寻找该正则表达式的所有匹配。

phoneMatch = phoneNumRegex.search(’My number is415-555-4242’)

如果字符串中没有找到该正则表达式模式,则search()方法返回None。如果找到该模式则返回一个Match对象。Match有一个group()方法,返回被查找的字符串中实际匹配的文本:

print(‘Phone number found :’+phoneMatch.group())

将期待的模式传递给 re.compile(), 并将得到的 Regex对象保存在phoneNumRegex 中。然后我们在 phoneNumRegex上调用 search(), 向它传入想查找的字符串。查找的结果保存在变量phoneMatch中。模式在这个字符串中找到,所以会返回一个 Match对象。我们就可以在phoneMatch变量上调用 group(), 返回匹配的结果, 显示出完整的匹配,即415-555-4242。

import re
phoneNumRegex = re.compile(r'\d\d\d-\d\d\d-\d\d\d\d')
phoneMatch = phoneNumRegex.search('My number is415-555-4242') print('Phone number found :'+phoneMatch.group())

输出: //Phonenumber found :415-555-4242

Python基础最难知识点:正则表达式(详细使用步骤)_第2张图片

总结一下:在 Python中使用正则表达式有几个步骤,但每一步都相当简单。

1.用 import re 导入正则表达式模块。

2.用 re.compile()函数创建一个 Regex对象(记得使用原始字符串)。

3.向 Regex对象的 search()方法传入想查找的字符串。它返回一个Match 对象。

4.调用 Match对象的 group()方法,返回实际匹配文本的字符串

为解决初学者学习上的困难,专门建立的Python学习扣QUN:⑧⑤⑤-④零⑧-⑧⑨③从零基础开始到Python各领域的项目实战教程、开发工具与电子书籍。与你分享企业当下对于python人才需求及学好python的高效技巧,不停更新最新教程!点击加入我们的 python学习圈

你可能感兴趣的:(Python基础最难知识点:正则表达式(详细使用步骤))