因为正则表达式这几年来几乎没有什么变化,前一段时间整理老博客的时候发现了这篇学习笔记,干脆整理一下,方便以后参考
基本概念
元字符
语法 |
说明 |
. |
匹配除换行符以外的任意字符 |
\w |
匹配字母或数字或下划线或汉字 |
\s |
匹配任意空白符 |
\d |
匹配数字 |
\b |
匹配单词的开始或结束 |
^ |
匹配字符串的开始 |
$ |
匹配字符串的结束 |
元字符的反义
语法 |
说明 |
\W |
匹配不是字母或数字或下划线或汉字 |
\S |
匹配不是任意空白符的字符 |
\D |
匹配不是数字的字符 |
\B |
匹配不是单词的开始或结束的位置 |
[^a] |
匹配除了 a 以外的任意字符 |
[^abcd] |
匹配除了 abcd 这几个字母以外的任意字符 |
重复模式
语法 |
说明 |
* |
重复零次或更多次 |
+ |
重复一次或更多次 |
? |
重复零次或一次 |
{n} |
重复 n 次 |
{n, } |
重复 n 或更多次 |
{n, m} |
重复 n 次到 m 次 |
贪心匹配与懒惰匹配
语法 |
说明 |
*? |
重复任意次,但尽可能少重复 |
+? |
重复 1 次或更多次,但尽可能少重复 |
?? |
重复 0 次或 1 次,但尽可能少重复 |
{n, m}? |
重复 n 次到 m 次,但尽可能少重复 |
{n, }? |
重复 n 次以上,但尽可能少重复 |
匹配方法
后向引用
(整理中)
零宽断言
(整理中)
负向零宽断言
(整理中)
正则调试器
- RegexBuddy
- Regexr
- RegExBuilder
- 其他搜索引擎能找到的在线正则匹配工具
参考资料
评论
发表评论