Python正则表达式基础

本文详细介绍正则表达式的各种元素及其应用场景,包括精确匹配、重复匹配等,并提供了丰富的实例帮助理解如何构建复杂的匹配规则。

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

  1. 直接给出字符就是精确匹配。特殊字符首先需要转义如’-‘:'\-'
  2. '\d' 匹配一个数字,'\w' 匹配一个字母或者数字。
    '123\d' 可以匹配'1231' 但是无法匹配'123a'
    '\d\d\d' 可以匹配到'123'
    '\w\w\w' 可以匹配到'py3'
    '.' 表示任意一个字符,'py.' 可以表示py3py!

  3. '*' 表示任意长个字符,'+' 表示至少一个字符,'?' 表示0个或者1个字符,'{n}' 表示n个字符,'{n,m}' 表示n-m个字符 '\s' 表示一个空格。
    举例 '\d{5}\s?\d{3,8}' 表示 五个数字+1-2个空格+3-8个数字。

  4. 精确的用[]来表示,例如:

'[0-9a-zA-Z\-]' 可以匹配一个数字或字母或’-‘

'[0-9a-zA-Z\-]*' 表示由数字、字母或下划线组成的任意多个字符

'[a-zA-Z\_][0-9a-zA-Z\_]*' 由字母或下划线开头,后接任意多个数字字母下划线组成的字符串,也就是Python的合法变量。

'[a-zA-Z\_][0-9a-zA-Z\_]{0,19}' 由字母或下划线开头的,后接0-19个由数字字母下划线组成的字符串。

  1. 其他特殊:
    A|B可以表示A或者B,即(P|p)ython 表示Python 或者python o
    ^ 表示行的开头,^\d 表示必须以数字开头
    $ 表示行的结尾,$\d 表示必须以数字结尾

使用Python的r 前缀,不必再考虑Python内置的转义了,如:

s = '123\\-001' #123\-001
s = r'123\-001' #123\-001
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值