【Python零基础入门篇 · 37】:正则基础

文章目录

  • 正则基础
      • math方法匹配
      • 匹配单个字符
        • “.”——匹配任意一个字符(除了\n之外)
        • “[]”——匹配[]中列举的字符
        • “\d”——匹配数字
        • “\D”——匹配非数字,即不是数字
        • “\s”——匹配空白,即空格和tab键
        • “\S”——匹配非空白
        • “\w”——匹配单词字符
        • “\W”——匹配非单词字符
      • 匹配多个字符
        • “ * ” ——匹配前一个字符出现0次或无限次
        • “ + ” ——匹配前一个字符出现一次或无限次
        • “ ?” ——匹配前一个字符出现一次或0次,即要么有一次,要么没有
        • “{m}” ——匹配前一个字符出现m次
        • “{m,n}”——匹配前一个字符出现从m次到n次(m
      • 匹配开头结尾
        • “ ^ ” ——匹配字符串开头
        • “ $ ” ——匹配字符串结尾
      • 不匹配
      • 总结
      • 匹配分组
        • “ | ”——匹配左右任意一个表达式(从左到右进行匹配)
        • (ab)——括号中字符作为一个分组
        • \num——引用分组num匹配到的字符串
        • (?P\)分组起别名

正则基础


导入模块:import re

math方法匹配

res = re.match(正则表达式,要匹配的字符串)

  • re.match()从字符串的开始位置进行匹配,配对成功返回match对象。,没有匹配成功返回None
  • 匹配到数据,使用group方法获取数据
    【Python零基础入门篇 · 37】:正则基础_第1张图片

匹配单个字符

“.”——匹配任意一个字符(除了\n之外)

【Python零基础入门篇 · 37】:正则基础_第2张图片

“[]”——匹配[]中列举的字符

【Python零基础入门篇 · 37】:正则基础_第3张图片

  • 下图报错原因:由于没有匹配到元素,之后又调用了group()方法造成的。
    【Python零基础入门篇 · 37】:正则基础_第4张图片

“\d”——匹配数字

0,1,2,3,4,5,6,7,8,9
【Python零基础入门篇 · 37】:正则基础_第5张图片

“\D”——匹配非数字,即不是数字

【Python零基础入门篇 · 37】:正则基础_第6张图片

“\s”——匹配空白,即空格和tab键

【Python零基础入门篇 · 37】:正则基础_第7张图片

“\S”——匹配非空白

【Python零基础入门篇 · 37】:正则基础_第8张图片

“\w”——匹配单词字符

a-z,A-Z,0-9,_(下划线),汉字
【Python零基础入门篇 · 37】:正则基础_第9张图片

“\W”——匹配非单词字符

【Python零基础入门篇 · 37】:正则基础_第10张图片

匹配多个字符

“ * ” ——匹配前一个字符出现0次或无限次

【Python零基础入门篇 · 37】:正则基础_第11张图片

“ + ” ——匹配前一个字符出现一次或无限次

【Python零基础入门篇 · 37】:正则基础_第12张图片

“ ?” ——匹配前一个字符出现一次或0次,即要么有一次,要么没有

【Python零基础入门篇 · 37】:正则基础_第13张图片

“{m}” ——匹配前一个字符出现m次

【Python零基础入门篇 · 37】:正则基础_第14张图片

“{m,n}”——匹配前一个字符出现从m次到n次(m

【Python零基础入门篇 · 37】:正则基础_第15张图片
【Python零基础入门篇 · 37】:正则基础_第16张图片

匹配开头结尾

“ ^ ” ——匹配字符串开头

^表示以什么开头,表示对什么取反。

【Python零基础入门篇 · 37】:正则基础_第17张图片

^在[]外表示由[]中的各个字符开头就匹配成功

^[ab] :表示以’a’或’b’开头就匹配成功
【Python零基础入门篇 · 37】:正则基础_第18张图片

“ $ ” ——匹配字符串结尾

【Python零基础入门篇 · 37】:正则基础_第19张图片
【Python零基础入门篇 · 37】:正则基础_第20张图片
【Python零基础入门篇 · 37】:正则基础_第21张图片

不匹配

^在[]中表示不匹配

【Python零基础入门篇 · 37】:正则基础_第22张图片

总结

  • ‘abc’:表示字符串开头有abc就匹配成功
  • ‘[abc]’:表示以字符串开头有’a’或’b’或’c’就匹配成功
  • ‘^[abc]’:表示由’a’或’b’或’c’开头就匹配成功
  • ‘[^abc]’:表示匹配除了’a’、‘b’、‘c’之外的字符

匹配分组

“ | ”——匹配左右任意一个表达式(从左到右进行匹配)

【Python零基础入门篇 · 37】:正则基础_第23张图片

(ab)——括号中字符作为一个分组

【Python零基础入门篇 · 37】:正则基础_第24张图片
【Python零基础入门篇 · 37】:正则基础_第25张图片

\num——引用分组num匹配到的字符串

【Python零基础入门篇 · 37】:正则基础_第26张图片

(?P)分组起别名

(?P=name)引用别名为name分组匹配到的字符串
【Python零基础入门篇 · 37】:正则基础_第27张图片

你可能感兴趣的:(Python零基础入门篇,python)