正则表达式(reguler expression)java.util.regex
所谓正则表达式就是一个可以匹配n个字符串的字符串模板。
正则表达式自持的通配符:
. - 匹配任意字符;
\s: - 一个任意的空白(空格 tab); (space)
\S: - 一个任意的非空白;
\d: - 一个任意的数字; (digital)
\D: - 一个任意的非数字;
\w: - 一个任意的单词字符; (word)
\W: - 一个任意的非单词字符;
String 中的如下方法支持正则表达式
public static void main(String[] args) {
System.out.println("12563".matches("\\d\\d\\d\\d\\d"));
System.out.println("sdjkfh.skjdhf".replaceAll("\\w" , "#"));
}
[ ] 表达式 : [ax中] 代表a或x或中 中其中任意一个字符;
[a-f] 代表a,b,c,d,e,f,中的任意一个字符;
枚举与范围共存:[a-f5-7];
表示求否:[^a-f] 表示不是a到f。
表示求交:[ a - f && [ ^ c- e ] ] ;
特殊字符:
( ),[ ] , { } ,\,?, * , + , ^ : 表示一行的开始, $ :表示一行的结束。
表示出现的次数(副词):
?表示其前面的东西出现0到1次,
* 表示其前面的东西出现0到n次,
+ 表示其前面的东西出现1到n次,
{ n , m} 表示其前面的东西出现n到m次,
{ ,m } 表示其前面的东西最多出现m次,
{ n } 表示其前面的东西最少出现n次,