参考文档: Java 正则表达式

【.】 通配符,匹配任一个字符

【\s+】 匹配多个数字

【\d+】 匹配一个或多个数字

【^】 定义以什么开始

【$】 定义以什么结尾

【?】 0次或一次匹配

【+】 一次或多次匹配

【{n}】正好匹配n次

【{n,}】至少匹配n次

【{n, m}】 匹配n-m次

【x|y】 匹配x或y

【[xyz]】 匹配包括的任意字符

【^[xyz]】 匹配不包括的任意字符,==反向字符集==

【[a-z]】 匹配a-z的字符范围内的任意字符

\ 转义符

捕获组

()在小括号里创建,把多个字符当成单独单元进行处理

例如: (dog)

小知识

在其他语言中,\ 表示:我想要在正则表达式中插入一个普通的(字面上的)反斜杠,请不要给它任何特殊的意义。

在 Java 中,\ 表示:我要插入一个正则表达式的反斜线,所以其后的字符具有特殊的意义。

所以,在其他的语言中(如Perl),一个反斜杠 \ 就足以具有转义的作用,而在 Java 中正则表达式中则需要有两个反斜杠才能被解析为其他语言中的转义作用。也可以简单的理解在 Java 的正则表达式中,两个 \\ 代表其他语言中的一个 \,这也就是为什么表示一位数字的正则表达式是 \\d,而表示一个普通的反斜杠是 \\\\。