正则表达式是一门简单又复杂的技术,凝聚了无数科学家的智慧结晶,它通过一种简单的表达方式,让我们可以完成很多复杂的工作。如检查一个邮箱地址是否合法,一个身份证号是否正确,一个手机号是否有效。
代码演示下面代码用来校验一个邮箱地址是否合法。
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test {
public static void main(String[] args) {
String msg = "123456@qq.cmn";
checkEmail(msg);
}
public static void checkEmail(String email) {
String regEx = "^([a-z0-9A-Z] [-|\\.]?) [a-z0-9A-Z]@([a-z0-9A-Z] (-[a-z0-9A-Z] )?\\.) [a-zA-Z]{2,}$";
Pattern pattern = Pattern.compile(regEx);
Matcher matcher = pattern.matcher(email);
if (matcher.matches()) {
System.out.println("邮箱合法");
} else {
System.out.println("邮箱不正确");
}
}
}
代码简析:
- main方法是程序执行入口。
- 方法checkEmail用来检查邮箱是否合法;
- 核心在11行的正则表达式,这个表达式写的比较完善,所以也比较复杂。对于初学者,可以先学点基础性的表达式,如校验数字:\\d ,校验英文字母:[a-zA-Z]
上方代码,直接拷贝到开发工具IDEA中可以用了。
Java开发工具:IDEA(下载和使用方法可以看我们下面的专栏)
想完整学Java编程,可以看我下面这个专栏:
,