python re模块(一)

一.匹配字符说明

   '.' 默认匹配除了换行符的所有字符,如果指定了DOTALL标志,那么.能够匹配所有字符

 '^'匹配字符串的开头,如果是在multiline模式下,’^‘将匹配每行的开头

 '$'匹配字符串的末尾,如果是在multiline模式下,’^‘将匹配每行的末尾

   '*' 将之前的字符重复0次及0次以上,例如ab*可匹配a,也可匹配abbbbbbbb

 '+' 将之前的字符重复1次及1次以上,例如ab+不可匹配a,但可匹配abbbbbbbb

   '?' 将之前的字符重复0次或者1次

   {m} 将之前的字符重复m次

 {m,n}将之前的字符重复m到n次

   {,n} 将之前的字符重复0到n次

   {m,}将之前的字符重复m到无限次

 *?,+?,??,{m,n}? 如果没有在后面加?,那么*,+,?在匹配时会尽量匹配更多的字符串,如<.*>在匹配<h>hello world</h>时会匹配<h>hello world</h>,而不是<h>,加           上?后匹配的字符第一次满足要求后就会停止匹配,那么<.*?>就能匹配<h>

   \  \的作用使得能够匹配*,?,+正常下不能匹配的字符,用\转义后即可匹配

 [] 标识一系列能够希望被匹配的字符,[a-z]匹配所有的小写字母,加上^如[^a-z]则匹配除了a-z的字符

   |  如a|b 可以匹配a或者b

   (?=...)  表示该位置后面的字符是...表示开始匹配,并且匹配是从...开始匹配,而不是从...后开始匹配

   (?!...)  表示该位置后面的字符不是...时才表示开始匹配,并且匹配是从...开始匹配,而不是从...后开始匹配

   (?<=...) 标识从...后才开始进行匹配,并且是从...后开始匹配

   \w 表示[a-zA-Z0-9]

 \W表示[^a-zA-Z0-9]

 \s表示空白字符,[\t\n\r\f\v]

   \S表示非空白字符,[^\t\n\r\f\v]

   \d [0-9]

   \D [^0-9]

   \b匹配空白字符,以及非字母数字下划线的字符

   \B \b的补集

 

posted on 2015-07-19 19:22  梦见世界 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/lifeisshort/p/4659390.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值