正则表达式
一 正则表达式
正则表达式本身也和python没有什么关系,就是匹配字符串内容的一种规则。
官方定义:正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑
字符:
元字符 |
匹配内容 |
. | 匹配除换行符以外的任意字符 |
\ w | 匹配字母或数字或下划线 |
\s | 匹配任意的空白符 |
\d | 匹配 数字 |
\W | 匹配非字母或数字或下划线 |
\S | 匹配非空白符 |
\D | 匹配非数字 |
\ n | 匹配 一个 换行符 |
\t | 匹配 一个 制表符 |
\b | 匹配 一个 单词 的 结尾 |
^ | 匹配 字符串 的 开始 |
$ | 匹配 字符串 的 结束 |
a|b | 匹配 字符串 a 或 字符串b |
() | 匹配 括号 里 的 表达式, 也 表示 一个 组 |
[...] | 匹配 字符串 中 的 字符 |
[^...] | 匹配 除 了 字符组 中 字符 的 所有 字符 |
量词:
量词 | 用法说明 |
* | 在这个量词之前的字符出现0次或者多次 |
+ | 在这个量词之前的字符出现1次或者多次 |
? | 在这个量词之前的字符出现0次或者1次 |
{ n} | 在这个量词之前的字符出现 n次 |
{n,} | 在这个量词之前的字符出现n次或者更多次 |
{n,m} | 在这个量词之前的字符出现 n-m 次 |
. ^ $
正则 | 待匹配 字符 | 匹配 结果 | 说明 |
海. | 海燕海娇 | 海燕海娇 | 匹配所有"海."的字符 |
^海. | 海燕海娇 | 海 燕 | 只从 开头 匹配 海. |
海.$ | 海燕海娇 | 海 娇 | 只 匹配 结尾 的 海.$ |
* + ? {}