正则表达式笔记

一、字符类型

  1、 .  表示任意字符

  2、d 表示数字

  3、D 表示非数字

  4、w 表示a-z,A-Z,0-9以及中文

  5、s 表示空(空格或TAB)

  6、[ad] 表示字母a或任意数字,[]里面是选择内容

二、计数

  1、* 表示任意个

  2、+ 表示至少一个

  3、?表示0或1个

  4、{m} 表示m个

  5、{n,m} 表示n到m之间任意个

三、其它

  1、^ 表示开头

  2、$ 表示结尾

  3、 转义字符,如果需要用到.?"等字符,需要在前面加转义

四、组

  1、()扩起来的内容称为组,正则匹配的内容可以用.group读取,组的内容用.group(组号)读取

  2、()还可以和|连用,如(163.com|126.com) 匹配163.com或者126.com

  3、组号  在正则中调用自己组的值,如

re.match(r"<(w*)><(w*)>.*</2>",'''<h3><h1> class="description">职位描述:</h1></h3>''')

输出

<h3><h1> class="description">职位描述:</h1>

  

五、方法

  1、re.match(r"", str) # 从头开始匹配相当于re.search(r"^", str) ,返回一个对象

  2、re.findall(r"", str)  匹配所有满足条件的字符串,返回一个列表

  3、re.sub(r"", "", str) 将str里面所有满足条件的字符串都替换为""里面的内容,返回替换后的字符串

  

原文地址:https://www.cnblogs.com/zhz-8919/p/10089025.html