全局匹配函数使用格式
re.comple(正则表达式).findall(源字符串)
基础1
| 普通字符 | 正常匹配 |
|---|---|
| \n | 匹配换行符 |
| \t | 匹配制表符 |
| \w | 匹配字母、数字、下划线 |
| \W | 匹配除字母、数字、下划线 |
| \d | 匹配十进制数字 |
| \D | 匹配除十进制数字 |
| \s | 匹配空白字符 |
| \S | 匹配除空白字符 |
| [ab89x] | 原子表,匹配ab89x中的任意一个 |
| [^ab89x] | 原子表,匹配除ab89x以外的任意一个字符 |
基础2
| 普通字符 | 正常匹配 |
|---|---|
| . | 匹配除换行符外任意 一个字符 |
| ^ | 匹配开始位置 |
| $ | 匹配结束位置 |
| * | 前一个字符出现 0\1\多次 |
| ? | 前一个字符出现 0\1 次 |
| + | 前一个字符出现 1\多次 |
| {n} | 前一个字符恰好出现 n次 |
| {n,} | 前一个字符至少出现 n次 |
| {n,m} | 前一个字符至少 n次,至多 m次 |
| | | 模式选择符 或 |
| ( ) | 模式单元,通俗来说就是,想提取什么内容,就在正则中用小括号将其括起来 |
import restring = 'aliyun1231code'pat = '\d'# 主要是使用 re.compile(正则表达式).findall(源字符串)print(re.compile(pat).findall(string))
基础3
贪婪模式:尽可能多地匹配,默认模式
懒惰模式:尽可能少地匹配,精准模式
如果出现以下两种组合,则代表为 懒惰模式 *? +?
