• 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表示空白字符,[ fv]

       S表示非空白字符,[^ fv]

       d [0-9]

       D [^0-9]

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

       B 的补集

  • 相关阅读:
    Python列表、元组、字典、集合的方法
    Python字符串方法总结
    进程、线程、协和的对比
    案例:图片下载器
    使用gevent实现多任务
    使用greenle完成多任务
    使用yield完成多任务
    生成器总结
    生成器send函数
    生成器yield关键字
  • 原文地址:https://www.cnblogs.com/lifeisshort/p/4659390.html
Copyright © 2020-2023  润新知