| 方法 | 返回 | 参数 | 说明 |
| .compile() | regex | 将正则表达式模式编译成正则表达式对象 | |
| pattern | 正则表达式 | ||
| flags=0 | 调整表达式的行为, 可以使用 or (|) 组合使用 | ||
| .A | flags= | 让 \w, \W, \b, \B, \d, \D, \s and \S 执行纯 ASCII 匹配,而不是全部Unicode匹配(仅在Unicode模式下有意义, 并在byte模式下被忽略) |
|
| .ASCII | |||
| .DEBUG | flags= | 显示关于编译表达式的调试信息 | |
| .I | flags= | 执行不区分大小写的匹配 | |
| .IGNORECASE | |||
| .L | flags= | 不建议使用??? | |
| .LOCALE | |||
| .M | flags= | 使 ^ $ 可以匹配每一行的开头和结尾, 而不仅仅匹配整个字符串的开头和结尾 (^匹配的是紧跟换行符之后的位置. $匹配的是紧跟换行符之前的位置) | |
| .MULTILINE | |||
| .S | flags= | 让 . 也可以匹配到换行符 (默认 . 智能匹配除换行符之外的字符) | |
| .DOTALL | |||
| .X | flags= | 更友好的编辑模式, 会忽略正则表达式中的空白符以及未转义的#号及其同一行后面的内容, 这样就可以多行编辑正则表达式, 更有利于阅读 | |
| .VERBOSE | |||
| .search() |
Match None |
返回第一次匹配到的结果, 无匹配则返回 None | |
| pattern | 正则表达式 | ||
| string | 要匹配的字符串 | ||
| flags=0 | 调用表达式的行为 | ||
| .match() | .search() | 只能从字符串的开头位置匹配 | |
| .fullmatch() | .search() | 正则表达式匹配整个字符串 3.4 | |
| .split() | list | 使用正则表达式分割字符串, 返回分割后的字符串列表(若含有捕获组则结果中也会包括捕获内容) | |
| pattern | 正则表达式 | ||
| string | 要匹配的字符串 | ||
| maxsplit=0 | 最大分割次数 | ||
| flags=0 | 调用表达式的行为 | ||
| .findall() | list | .search() | 以列表返回所有匹配结果 |
| .finditer() | iter | .search() | 返回一个包含所有匹配结果的迭代器 |
| .sub() | str | 将匹配到的字符串替换为repl | |
| pattern | 正则表达式 | ||
| repl | str, fun(match): return str | ||
| string | 要匹配的字符串 | ||
| count=0 | 允许替换的最大次数 | ||
| flags=0 | 调用表达式的行为 | ||
| .subn() | tuple | .sub() | 返回 (替换后的字符串, 替换次数) |
| .escape() | str | string | 转义除ASCII字母, 数字和 ‘_‘ 之外的所有字符 (‘_‘ 3.3 之后才不再转义) |
| .purge() | 清除正则表达式缓存 | ||
| .error() | ??? | ||
| 已编译的正则表达式对象的方法和属性 | |||
| .search() | Match | string[, pos[, endpos]] | |
| .match() | Match | string[, pos[, endpos]] | |
| .fullmatch() | Match | string[, pos[, endpos]] | |
| .split() | list | string, maxsplit=0 | |
| .findall() | list | string[, pos[, endpos]] | |
| .finditer() | iter | string[, pos[, endpos]] | |
| .sub() | str | repl, string, count=0 | |
| .subn() | tuple | repl, string, count=0 | |
| .flags | flags | 正则表达式匹配标志 | |
| .groups | int | 模式中的捕获组数量 | |
| .groupindex | dict | 将 (?P<id>) 定义的任何符号组名称映射到组编号的字典 | |
| .pattern | str | 编译RE对象的模式字符串 | |
| Match对象的方法 | |||
| .expand() | |||
| .group() | str | 0 | 默认, 返回匹配结果 |
| str | 1 | 返回第一个捕获组捕获的内容 | |
| Tuple | 1, 2 | 返回两个捕获组内容组成的Tuple | |
| .groups() | Tuple | 以元组的方式返回全部捕获组的内容 | |
| default=None | 若捕获组内容为空, 则使用此值填充 | ||
| .groupdict() | dict | default=None | 设有name的捕获组, 返回成一个字典 |
| .start() | int | [group] | 匹配开始的位置 |
| .end() | int | [group] | 匹配结束的位置 |
| .span() | Tuple | [group] | (匹配开始的位置, 匹配结束的未至) |
| .pos | 传递的pos值 | ||
| .endpos | 传递的endpos值 | ||
| .lastindex | 最后一个捕获组的整数索引 | ||
| .lastgroup | |||
| .re | |||
| .string | 要匹配的字符串 | ||
原文:https://www.cnblogs.com/P--K/p/8819523.html