一、正则表达式
1、常见的正则匹配符
[abc] 匹配abc中任意一个字符
[^abc] 匹配除abc之外的任意一个字符
[\\d] | [0-9] 匹配0-9中任意一个字符
[a-zA-Z] 匹配任意一个字母
[\\w] | [a-zA-Z0-9] 匹配任意一个字母或数字
\\D 匹配任意一个非数字
\\s 匹配任意一个空白字符
\\S 匹配任意一个非空字符
\\W 匹配任意一个非字母数字字符
^ 表示开始
$ 表示结束
? 0次或1次
* 0次或多次
+ 1次或多次
{n} n次
{n,} 至少n次
{n,m} 至少n次,最多m次
| 或者
() 分组
2、常用
-
String
-
matches()
//验证当前字符串对象是否匹配传入的正则表达式 boolean matches(String regex); //实例 System.out.print("aaaaab".matches("a*b"));
-
replaceAll()
//根据正则表达式,使用新的字符序列替换原本字符串中匹配的内容,生成一个新的字符串对象返回 String replaceAll(String regex,String newStr); //实例 System.out.print("fadf1fa5wre2cew".replaceAll("\\d","*"));
-
split()
//使用指定正则表达式规则,分割字符串 String [] split(String regex); //实例 System.out.print(Arrays.toString("1a2b3c4d".split("\\d")));
-
-
Pattern
//匹配str这个字符串是否满足regex这个正则表达式 static boolean matches(String regex,String str); //实例 System.out.print(Pattern.matches("a*b","aaaaaab"));
-
Matcher
boolean matches(); //实例 Pattern pattern = Pattern.compile("a*b"); Matcher matcher = pattern.macher("aaaaab"); System.out.print(matcher.matches());