Python3核心编程之正则表达式

本文介绍了正则表达式的概念,包括搜索与匹配的区别,各种元字符的功能,如点号、脱字符、美元符号等,以及如何使用方括号创建字符集,通过闭包操作符实现频数匹配,并介绍了特殊字符的含义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • “搜索”(searching),即在字符串任意部分中搜索匹配的模式
  • “匹配”(matching)是指判断一个字符串能否从起始处全部或者部分地匹配某个模式

元字符

择一匹配模式

择一匹配的管道符号(|),从多个模式中选择其一进行匹配

匹配任意单个字符

点号或者句点(.)符号匹配除了换行符\n 以外的任何字符(Python 正则表达式有一个编译标记[S 或者 DOTALL],该标记能够推翻这个限制,使点号能够匹配换行符)

从字符串起始或者结尾或者单词边界匹配

指定用于搜索的模式,匹配字符串的开始位置,就必须使用脱字符(^)或者特殊字符\A,美元符号($)或者\Z将用于匹配字符串的末尾位置

\b 将用于匹配一个单词的边界,\B 将匹配出现在一个单词中间的模式,即不是边界

创建字符集

方括号[ ],能够匹配一对方括号中包含的任何字符,相当于逻辑或

限定范围和否定

方括号中两个符号中间用连字符(-)连接,用于指定一个字符的范围

脱字符(^)紧跟在左方括号后面,这个符号就表示不匹配给定字符集中的任何一个字符。

使用闭包操作符实现存在性和频数匹配

  • 星号操作符(*)将匹配其左边的正则表达式出现零次或者多次的情况(编译原理中,该操作称为 Kleene 闭包)
  • 加号(+)操作符将匹配一次或者多次出现的正则表达式
  • 问号(?)操作符将匹配零次或者一次出现的正则表达式
  • 大括号操作符({}),指定匹配次数,如{4},{3,9}

表示字符集的特殊字符

  • \d 表示匹配任何十进制数字
  • \w能够用于表示全部字母数字的字符集,相当于[A-Za-z0-9_]的缩写形式
  • \s 可以用来表示空格字符
  • 上述字符的大写版本表示不匹配

使用圆括号指定分组

  • 圆括号():
    • 对正则表达式进行分组
    • 匹配子组

扩展表示法

  • (?…)实现一个前视(或者后视)匹配,或者条件检查

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值