正则表达式-元字符

元字符的完整列表如下:
. ^ $ * + ? { } [ ] \ | ( )

在这里插入图片描述
【正则里面的元字符】

“.” 匹配除换行符以外的任意字符

“\w” 匹配数字、字母、下划线、汉子

“\s” 匹配任意的空白符

“\d” 匹配数字

“\b” 匹配单词的开始或结束

“^” 匹配字符串的开始

“$” 匹配字符串的结束
“?”(可选项,把?放在一个字符后面,表示无论这个字符是否出现都可以被匹配)

【元字符的反义】(就是把上面元字符全部大写)

“\W” 匹配任意不是数字、字母、下划线、汉子的字符

“\S” 匹配任意不是空白符的字符

“\D” 匹配任意不是数字的字符

“\B” 匹配不是单词开头或结束的位置

“[^x]” 匹配除了x以外的任意字符

“[^abcd]” 匹配除了abcd这几个字母以外的任意字符

【字符转义】

如果我们想匹配“.”、“?”等元字符,就要用到转义字符“\”。

比如:

 \. 、\* 、\?”
>>> str = "^abc ^abc ^abc ^abc "
>>> pattern = r'\^abc'

>>> re.findall(pattern, str)
['^abc', '^abc', '^abc', '^abc']

【特别说明】
最灵活的应该是元字符 {m, n}(m 和 n 都是十进制整数)
它的含义是前一个字符必须匹配 m 次到 n 次之间。
例如 a/{1, 3}b 会匹配 a/b,a//b 和 a///b。但不会匹配 ab(没有斜杠);也不会匹配ab(斜杠超过三个)。

但是可以省略 m 或者 n,这样的话,引擎会假定一个合理的值代替。
省略 m,将被解释为下限 0;省略 n 则会被解释为无穷大(事实上是上边我们提到的 20 亿)。

  • 4
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值