13-Python之路-进阶-正则表达式

2022-05-03  本文已影响0人  程序记录日志

简介

RE 模块

语法

import re       # 导入模块
result = re.match("正则表达式要匹配的字符串")       # 使用match方法进行匹配操作
result.group()  #如果上一步匹配到数据的话,可以使用group方法来提取数据

单字符匹配

字符 功能
. 匹配任意一个字符(除了\n)
[] 匹配[]中列举的字符
\d 匹配数字(0-9)
\D 匹配非数字
\s 匹配空白(空格 、Tab键)
\S 匹配非空白
\w 匹配单词字符(a-z、A-Z、0-9、_)
\W 匹配非单词字符

多个字符匹配

字符 功能
* 匹配前一个字符出现0次或者无限次
+ 匹配前一个字符出现1次或者无限次
匹配前一个字符出现1次或者0次
{m} 匹配前一个字符出现m次
{m,n} 匹配前一个字符出现从m到n次

开头结尾匹配

字符 功能
^ 匹配字符串开头
$ 匹配字符串结尾

分组匹配

字符 功能
| 匹配左右任意一个表达式
(ab) 将括号中字符作为一个分组
\num 引用分组num匹配到字符串
(?P<name>) 给分组起名
(?P=name) 引用别名和name分组匹配到的字符串

高级用法

search

search:语法

import re
ret = re.search(r"正则表达式","正则表达式要匹配的字符串")
ret.group()

search和match区别

findall

findall:语法

import re
ret = re.findall(r"正则表达式","正则表达式要匹配的字符串")
print(ret)

sub

sub:语法

import re
ret = re.sub(r"正则表达式","替换的字符串","正则表达式要匹配的字符串")
print(ret)

split

split:语法

import re
ret = re.split(r"正则表达式","正则表达式要匹配的字符串")
print(ret)

贪婪和非贪婪

r的作用

上一篇 下一篇

猜你喜欢

热点阅读