Java正则表达式
2016/5/9 14:18:49 SeventeenWen
String类的特殊方法
boolean matches(String regex):判断字符串是否匹配正则表达式。
String replaceAll(String regex,String relacement):将字符串符合正则表达式的子串替换成replacement.
String replacceFirst(String regex,String replacement):将字符串第一个符合正则表达式的子串替换成replacement.
String[] split(String regex):以regex作为分割符,
特殊符号 | 说明 |
---|---|
$ | 匹配一行的结尾 |
^ | 匹配一行的开头 |
() | 标记子表达式的开头和结尾 |
[] | 确定中括号表达式的开始和结束位置 |
{} | 标记前面子表达式可以出现的次数 |
* | 指定前面子表达式可以出现零次或多次 |
+ | 指定前面子表达式可以出现一次或多次 |
? | 指定前面子表达式可以出现零次或一次 |
预定义字符
预定义字符 | 说明 |
---|---|
. | 可以匹配任意字符 |
\d | 匹配0~9的所有数字 |
\D | 匹配非数字 |
\s | 匹配所有空白字符,包括空格 |
\S | 匹配所有非空白字符 |
\w | 匹配所有单词字符,包括a~z,A~Z,0~9和下划线’_’ |
\W | 匹配所有非单词字符 |
数量标识符
三种模式
- Greedy(贪婪模式):数量表示符默认,除非另有表示否则会一直匹配下去,直到无法匹配为止。
- Reluctant(勉强模式)用?表示,只会匹配最少的字符
- Possessive(占用模式)用+表示,
使用正则表达式
可以使用Pattern和Matcher来使用正则表达式,正则表达式必须被编译成Pattern对象,
获得匹配器Matcher
Matcherd的常用方法
>find():返回目标字符串是否包含Pattern匹配的字符串。
>group():返回上一次与Pattern匹配的字符串。
>matches():返回整个字符串是否和Pattern匹配