正则表达式的概念:
源字符串:“123”
正则表达式:"[0-9]{3}"
结果:源字符串与正则表达式匹配成功!
正则表达式是具有特殊含义的字符串,用来定义源字符串匹配规则。
java中的Pattern类里有方法去分析源字符串与正则表达式是否匹配。
以下简述正则表达式语法规则:
a: 字符
* x 代表的是字符x
* \\ 代表的是反斜线字符'\'
* \t 代表的是制表符
* \n 代表的是换行符
* \r 代表的是回车符
b: 字符类
* [abc] a、b 或 c(简单类)
* [^abc] 任何字符,除了 a、b 或 c(否定)
* [a-zA-Z] a到 z 或 A到 Z,两头的字母包括在内(范围)
* [0-9] 0到9的字符都包括
* [a-zA-Z_0-9] 代表的字母或者数字或者下划线(即单词字符)
c: 预定义字符类
* . 任何字符
* \d 数字:[0-9]
* \w 单词字符:[a-zA-Z_0-9]
d: 边界匹配器
* ^ 代表的是行的开头
* $ 代表的是行的结尾
* \b 代表的是单词边界
e: 数量词
* X? X,一次或一次也没有
* X* X,零次或多次
* X+ X,一次或多次
* X{n} X,恰好 n 次
* X{n,} X,至少 n 次
* X{n,m} X,至少 n 次,但是不超过 m 次
注:java API文档中Pattern类里有更详细的正则表达式语法规则。