python 正则表达式总结

一、匹配元字符

     使用元字符可以简便操作,写正则表达式时更方便

     常用元字符:  

. 它匹配除了换行字符外的任何字符,在 alternate 模式(re.DOTALL)下它甚至可以匹配换行 
^ 匹配行首。除非设置 MULTILINE 标志,它只是匹配字符串的开始。 
$ 匹配行尾,行尾被定义为要么是字符串尾,要么是一个换行字符后面的任何位置。 
* 重复0或N次 
+ 重复1或N次 
? 重复0或1次 
{} 该限定符的意思是至少有 m 个重复,至多到 n 个重复 
[] 它们常用来指定一个字符类别,所谓字符类别就是你想匹配的一个字符集 
\ 反斜杠后面可以加不同的字符以表示不同特殊意义。它也可以用于取消所有的元字符,这样你就可以在模式中匹配它们了 
| 可选项,或者 "or" 操作符。 
() 组 
\d 匹配任何十进制数;它相当于类 [0-9]。 
\D 匹配任何非数字字符;它相当于类 [^0-9]。 
\s 匹配任何空白字符;它相当于类 [ \t\n\r\f\v]。 
\S 匹配任何非空白字符;它相当于类 [^\t\n\r\f\v]。 
\w 匹配任何字母数字字符;它相当于类 [a-zA-Z0-9_]。 
\W 匹配任何非字母数字字符;它相当于类 [^a-zA-Z0-9_]。 
\A 只匹配字符串首。当不在 MULTILINE 模式,\A 和 ^ 实际上是一样的。然而,在 MULTILINE 模式里它们是不同的;\A 只是匹配字符串首,而 ^ 还可以匹配在换行符之后字符串的任何位置。 
\Z 只匹配字符串尾。 
\b 单词边界。这是个零宽界定符(zero-width assertions)只用以匹配单词的词首和词尾。单词被定义为一个字母数字序列,因此词尾就是用空白符或非字母数字符来标示的。 
\B 另一个零宽界定符(zero-width assertions),它正好同 \b 相反,只在当前位置不在单词边界时匹配。
二、实际应用
  正则匹配的顺序刚开始学的时候感觉很是迷惑,但是用过几次后发现匹配起来就跟正常的读书一样,从左往右
  1)匹配首部字符
    未完待续.....
  

转载于:https://www.cnblogs.com/zhoufankui/p/5892836.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值