感觉正则好难记,刚开学,有点抽象
2 个赞
多练习
正则表达式速记(精简版)
一、字符类:看字母记含义
| 符号 | 记忆 | 含义 |
|---|---|---|
\d |
d igit | 数字 |
\w |
w ord | 字母、数字、下划线 |
\s |
s pace | 空格、换行、制表符 |
\b |
b oundary | 单词边界 |
| 大写字母 | 取反 |
\D =非数字,\W =非单词 |
口诀 :d是数字,w是单词,s是空格,b是边界,大写就是反
二、量词:数字联想
| 符号 | 记忆 | 含义 |
|---|---|---|
? |
问号=可有可无 | 0次或1次 |
* |
星号=很多 | 0次或多次 |
+ |
加号=加东西 | 1次或多次 |
{n} |
花括号数个数 | 恰好n次 |
口诀 :问号可有可无,星号无所不有,加号至少要有
三、位置与括号
| 符号 | 含义 | 记忆 |
|---|---|---|
^ |
行首 | 箭头指向上方 |
$ |
行尾 | 美元是终点 |
[abc] |
其中1个 | 方框里选一个 |
(abc) |
分组 | 圆盘里是一组 |
| |
或 | 竖线表示或者 |
四、常用组合
- 手机号:
1[3-9]\d{9} - 邮箱:
\w+@\w+\.\w+ - 数字:
\d+ - 中文:
[\u4e00-\u9fa5]
一句话总结 :把正则当成自然语言的缩写——d是数字,+是多个,[]是其中之一,^是开头,$是结尾。
正则表达式很考验逆向思维