正则表达式查询
速查表
元字符 | 描述 |
---|---|
\ | 转义字符,用于匹配一些保留的字符 [ ] ( ) { } . * + ? ^ $ \ \n 匹配一个换行符,\\ 匹配\ 而\( 则匹配( |
| | 或运算符,匹配符号前或后的字符串 |
^ | 从字符串开始位置匹配 |
$ | 从字符串结束位置匹配 |
. | 匹配除换行符外的任意单个字符 |
* | 匹配前面的子表达式零次或多次,等价于{0,} |
+ | 匹配前面的子表达式一次或多次,等价于{1,} |
? | 匹配前面的子表达式零次或一次,等价于{0,1} |
{ } | 匹配前面的子表达式重复的次数。{n,m} 匹配前面的字表达最少n次且最多m次{n,} 匹配前面的字表达最少n次{n} 匹配前面的字表达n次 |
[ ] | 字符集合[xyz] 匹配所包含的任意一个字符[a-z] 匹配指定范围内的任意一个字符 |
[^] | 负字符集合[^xyz] 匹配未包含的任意字符[^a-z] 匹配任何不在指定范围的任意字符 |
( ) | 特征标群,写在( ) 中的子模式(parttern) 匹配pattern并获取这一匹配。 |
简写字符集
简写 | 描述 |
---|---|
. | 除换行符外的所有字符 |
\w | 匹配所有字母数字, 等同于 [a-zA-Z0-9_] |
\W | 匹配所有非字母数字, 即符号, 等同于: [^\w] |
\d | 匹配数字: [0-9] |
\D | 匹配非数字: [^\d] |
\s | 匹配所有空格字符, 等同于: [\t\n\f\r\p{Z}] |
\S | 匹配所有非空格字符: [^\s] |
\f | 匹配一个换页符 |
\n | 匹配一个换行符 |
\r | 匹配一个回车符 |
\t | 匹配一个制表符 |
\v | 匹配一个垂直制表符 |
\p | 匹配 CR/LF (等同于 \r\n ),用来匹配 DOS 行终止符 |
常用匹配
用户名 | ^[a-z0-9_-]{3,16}$ |
密码 | ^[a-z0-9_-]{6,18}$ |
十六进制值 | ^#?([a-f0-9]{6}$ |
电子邮箱 | ^#?([a-f0-9]{6} |[a-f0-9]{3}) ^[a-z\d]+(\.[a-z\d]+)*@([\da-z](-[\da-z])?)+(\.{1,2}[a-z]+)+$ |
URL | ^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$ |
IP地址 | ((2[0-4]\d |25[0-5] |[01]?\d\d?)\.){3}(2[0-4]\d |25[0-5] |[01]?\d\d?) ^(?:(?:25[0-5] |2[0-4][0-9] |[01]?[0-9][0-9]?)\.){3}(?:25[0-5] |2[0-4][0-9] |[01]?[0-9][0-9]?)$ |
HTML标签 | ^<([a-z]+)([^<]+)*(?:>(.*)<\/\1> |\s+\/>)$ |
删除代码\注释 | (?<!http: |\S)//.*$ |
Unicode编码中的汉字范围 | ^[\u2E80-\u9FFF]+$ |
在线练习
参考网址
github项目:learn-regex
正则表达式速查表
相关推荐
MaggieRose 2020-08-19
山水沐光 2020-08-03
云中舞步 2020-11-12
杨德龙 2020-11-11
JohnYork 2020-10-16
wangzhaotongalex 2020-09-22
xiaoseyihe 2020-11-16
不要皱眉 2020-10-14
Crazyshark 2020-11-13
K先生 2020-11-10
momode 2020-09-11
思君夜未眠 2020-09-04
点滴技术生活 2020-08-21
kevinweijc 2020-08-18
wintershii 2020-08-17
vapaad 2020-08-17
wera00 2020-08-17
移动开发与培训 2020-08-16
ReunionIsland 2020-08-16