正则表达式使用大全

re

参数:

  1. pattern:正则表达式
  2. string:要处理的字符串
  3. flags:修饰正则的规则

匹配方式:

re.match(pattern,string,flags)从字符串的起始位置开始返回成功的匹配,匹配不成功返回none。
re.search(pattern,string,flags) 扫描整个字符串并返回第一个成功的匹配。
re.findall/re.finditer(pattern,string,flags) :在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,未匹配成功则返回空列表。
re.sub() :替换字符串
re.split() :分割字符串

匹配规则:

  1. 单字符匹配

abc : 匹配abc
[abc] : 匹配abc中任意一个字符
[0-9] : 匹配任意一个数字
[a-zA-Z] : 匹配任意一个字母
[a-zA-Z0-9-] : 匹配任意字母数字和-
[^0-9] : 匹配任意一个非数字

  1. 多字符匹配

x* : 匹配0个或多个x内容(0,无穷)
x+ : 匹配1个或多个x内容(1,无穷)
x? : 匹配0个或一个x内容(0,1)
x{m} : 匹配m个x内容
x{m,} : 至少匹配m个x内容
x{m,n} : 至少匹配m-n个x内容(m,n)

  1. 元字符

\d : 等价[0-9]
\D : 等价[^0-9]
\w : 等价与 [a-zA-Z0-9_]
\W : 对\w取反
\s : 匹配任意一个空白字符包括 空格、制表符、换行符等
\S匹配任意一个非空白字符

  1. 点字符

. : 匹配除换行符之外的任意字符
\.: 匹配一个点

  1. 匹配模式

贪婪模式 :尽可能多的匹配字符(取上限)
非贪婪模式 :尽可能少的匹配字符(取下限)(在已有的数量符后面追加一个?触发)

  1. 限定符

^ : 出现在正则的头部;代表以 ... 开头
$ : 出现在 正则的尾部;代表以 ... 结尾

  1. 分组

re.search(a(b)()()c).group():分组取值
group(0):取所有组
group():取第一组内容
修饰符:flags

修饰符 描述
re.l 使匹配对大小写不敏感
re.M 匹配多行,影响限定符
re.S 使.匹配包括换行符在内的所有字符
posted @   向众神祈祷  阅读(53)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!

喜欢请打赏

扫描二维码打赏

微信打赏

喜欢请打赏

扫描二维码打赏

微信打赏

点击右上角即可分享
微信分享提示