正则表达式Pattern类的基本用法
public void mailRegex() {
// 要验证的字符串
String str = "shiruo.hdp@taobao.com";
// 邮箱验证规则
String regEx = "[a-zA-Z_]{1,}[a-zA-Z.]{0,}@(([a-zA-z0-9]-*){1,}\\.){1,3}[a-zA-z\\-]{1,}";
// 编译正则表达式
Pattern pattern = Pattern.compile(regEx);
// 忽略大小写的写法
// Pattern pat = Pattern.compile(regEx, Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher(str);
// 字符串是否与正则表达式相匹配
boolean rs = matcher.matches();
// 字符串是否与正则表达式相匹配
boolean rs = matcher.matches();
boolean look = matcher.lookingAt();
boolean find = matcher.find(2);//修改start的值,改变取结果集。
int start = matcher.start();
int end = matcher.end();
String group = matcher.group();
int groupCount = matcher.groupCount();
String replaceAll = matcher.replaceAll("shiruo.hdp");
System.out.println("rs=" + rs);
System.out.println("look=" + look);
System.out.println("find=" + find);
System.out.println("start=" + start);
System.out.println("end=" + end);
System.out.println("group=" + group);
System.out.println("groupCount=" + groupCount);
System.out.println("replaceAll=" + replaceAll);
}
一个或多个汉字:^[\u0391-\uFFE5]+$
邮政编码:^[1-9]\d{5}$
QQ号码:^[1-9]\d{4,10}$
邮箱:^[a-zA-Z]{1,}[0-9]{0,}@(([a-zA-z0-9]-*){1,}.){1,3}[a-zA-z-]{1,}$
用户名(字母开头 + 数字/字母/下划线):^[A-Za-z][A-Za-z1-9-]+$
手机号码:^1[3|4|5|8][0-9]\d{8}$
URL:^((http|https)://)?([\w-]+.)+[\w-]+(/[\w-./?%&=]*)?$
18位身份证号:^(\d{6})(18|19|20)?(\d{2})([01]\d)([0123]\d)(\d{3})(\d|X|x)?$