Python基础之模块:4、正则表达式和re模块
阅读原文时间:2023年07月09日阅读:1

目录

一、正则表达式

引言:

​ 正则表达式式一门独立的技术,所有的编程语言都可以使用

​ 它是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配,可用用来筛选和查找字符串中符合条件的数据。

须知:在中括号内填入相应字符,用来匹配与字符相应的数字或字母,字符组内所有的数据默认都是或的关系

用法表示:
    [a值-b值]      # 匹配a值到b值任意一个数

具体用法:
    [0-9]           # 匹配0-9之间任意一个数
    [a-z]           # 匹配a-z之间任意一个数
    [A-z]           # 匹配A-Z之间任意一个数

组合用法:
    [0-9a-zA-Z]         # 匹配数字或者小写字母或者大写字母

须知:特殊符号默认匹配方式是挨个匹配,顺序由左至右

序号

符号

含义/用法

1

.

匹配换行符以外的任意字符

2

\w

匹配字母、数字、下划线

3

\W

匹配非数字、非字母、非下划线

4

\d

匹配数字

5

^

匹配字符串的开头

6

$

匹配字符串的结尾

7

^$

两则中间填入字符可用来精确匹配

8

a|b

匹配a或b(管道符是‘或’的意思)

9

()

给正则表达式分组,不影响表达式匹配功能

10

[]

字符组内填写的内容默认都是或的关系

11

[^]

取反 匹配除了字符组内字符以外所有字符

须知:

​ 1.正则表达式默认情况下都是贪婪匹配>>>:尽可能多的匹配

​ 2.两次必须结合表达式一起使用,不能单独出现,并且只影响左边第一个表达式:

​ kangkang{2}\d{5}

​ 含义:'kangkang' 2次,\d 5次

序号

符号

含义/用法

1

*

默认是多次默 认是多次(无穷次)

2

+

匹配一次或多次 默认是多次(无穷次)

3

匹配0次或1次 默认是1次

4

{n}

重复n次

5

{n,}

重复n次或更多次 默认是更多次

6

{n,m}

重复n-m次 默认是m次

须知:所有量词默认都是贪婪匹配,想要变成非贪婪匹配就需要在量词后面加上‘问号’

  • .# 属于典型的贪婪匹配,使用它,结束条件一般需要在左右添加条件

    待匹配的文本:

    贪婪匹配:
    <.> # 非贪婪匹配: <.?> #