正则表达式 - re模块的基本操作和常用函数
正则表达式是一个强大的文本处理工具,可以用于在字符串中进行匹配和搜索操作。Python中内置了re模块,提供了对正则表达式的支持。下面是re模块的基本操作和常用函数的介绍。
1. 导入re模块
要使用re模块,首先需要导入它。可以使用以下代码导入re模块:
import re
2. 查找匹配
re模块的核心函数是search()函数,它可以在字符串中查找与正则表达式匹配的内容。search()函数的用法如下:
re.search(pattern, string, flags=0)
- pattern:要查找的正则表达式模式
- string:要在其中查找的字符串
- flags:可选参数,用于控制匹配的方式,比如不区分大小写等
search()函数会返回一个Match对象,可以使用group()方法获取匹配的内容。
示例代码:
import re
string = 'abc def ghi'
pattern = r'def'
result = re.search(pattern, string)
if result:
print(result.group())
输出结果:
def
3. 切分字符串
re模块的split()函数可以根据正则表达式模式将字符串拆分为多个子字符串。split()函数的用法如下:
re.split(pattern, string, maxsplit=0, flags=0)
- pattern:用于拆分字符串的正则表达式模式
- string:要拆分的字符串
- maxsplit:可选参数,指定最大拆分次数,超过次数后不再拆分
- flags:可选参数,用于控制拆分的方式,比如不区分大小写等
示例代码:
import re string = 'abc def ghi' pattern = r'\s' result = re.split(pattern, string) print(result)
输出结果:
['abc', 'def', 'ghi']
4. 替换字符串
re模块的sub()函数可以根据正则表达式模式替换字符串中的匹配内容。sub()函数的用法如下:
re.sub(pattern, repl, string, count=0, flags=0)
- pattern:用于匹配要替换的字符串的正则表达式模式
- repl:用于替换的字符串
- string:要进行替换的字符串
- count:可选参数,指定最大替换次数,超过次数后不再替换
- flags:可选参数,用于控制匹配的方式,比如不区分大小写等
示例代码:
import re string = 'abc def ghi' pattern = r'def' repl = 'xyz' result = re.sub(pattern, repl, string) print(result)
输出结果:
abc xyz ghi
5. 匹配多个字符串
re模块的findall()函数可以匹配字符串中所有与正则表达式模式匹配的内容,并以列表形式返回。findall()函数的用法如下:
re.findall(pattern, string, flags=0)
- pattern:用于匹配的正则表达式模式
- string:要进行匹配的字符串
- flags:可选参数,用于控制匹配的方式,比如不区分大小写等
示例代码:
import re string = 'abc def ghi' pattern = r'\b\w+\b' result = re.findall(pattern, string) print(result)
输出结果:
['abc', 'def', 'ghi']
以上是re模块的基本操作和常用函数的介绍,希望对你理解正则表达式的使用有所帮助。
