1.判断字符串是否是正确的的邮政编码:
System.out.println(Pattern.matches("[0-9]{6}","300191"));
System.out.println(Pattern.matches("//d{6}","3001a"));
一个Pattern对象就是一个正则表达式经编译后的表现模式,即“模式编译器”。matches方法直接判断字符序列input是否匹配正则表达式。
2.判断字符串是否是国内的电话号码:
System.out.println(Pattern.matches("[0-9]{3,4}//-?[0-9]+","010-12345"));
3.日期提取。
String regEx = "([a-zA-Z]+)//s+[0-9]{1,2},//s*[0-9]{4}";
String str = "June 30 ,2009";
Pattern p = Paettern.compile(regEx);
Matcher m= p.matcher(str);
if(!m.find()){
System.out.println("日期错误!");
return;
}
System.out.println(m.group(1));
group方法是得到匹配结果中提取的第group个分组的值。
4.字符替换:
String regEx = "a+";
Pattern p = Paettern.compile(regEx);
Matcher m= p.matcher("asddddddaaAaaaaaaaa aa aaa booa");
String s = m.replaceAll("A");
System.out.println(s);
5.验证身份
System.out.println("//d{15}|//d{18}","123456789123456789");
6.中文提取。
String f ="welcome to china ,你好,谢谢!";
Pattern p = Paettern.compile("[//u4e00-//u9FFF]+");
Matcher m= p.matcher(f);
StringBuffer sb = new StringBuffer();
while(matcher.find()){
sb.append(matcher.group());
}
System.out.println(sb);
7.验证Email地址。
private static validateEmail(String mail){
Pattern p = Paettern.compile("[a-zA-Z0-9]+@[a-zA-Z0-9]]+//.[a-zA-Z0-9]]+");
Matcher m= p.matcher(mail);
if(m.matches()){
System.out.println("合法的email");
}else{
System.out.println("非法的email");
}
}