如何看一个检查邮件地址有效性呢?
下面给出的这点程序就能满足你的要求了,呵呵
private boolean isNameAdressFormat(String email){
boolean isExist = false;
Pattern p = Pattern.compile("\\w+@(\\w+.)+[a-z]{2,3}");
Matcher m = p.matcher(email);
boolean b = m.matches();
if(b) {
System.out.println("有效邮件地址");
isExist=true;
} else {
System.out.println("无效邮件地址");
}
return isExist;
}
下面来解析一下它:
"\\w+@(\\w+.)+[a-z]{2,3}"
在正则表达式中\w表示任意单个字符范围是a-z,A-Z,0-9,因为在java中\本来就是转义符
号,如果只写为\w则会发生歧义,甚至错误,因此要写为:\\w
+的意思就是出现一次以上,所以\\w+就代表任意长度的字符串,但不包括其他特殊字符
,如_,-,$,&,*等,呵呵,如果真想进行完全的邮件有效性检查,那正则表达式就不止这
么长了,呵呵,有兴趣的可以自己写写看
后面的我想就简单了,@必须出现,而且只准出现一次,因此直接写成@就行了
\\w+.任意字符串后面加上DOT,大家都知道这是域名的特点,另外就是我写成了
(\\w+.)+,为什么呢,因为邮件服务器有可能是二级域名,三级域名,或者……
如果不带()+的话,abc@sina.com有效,而abc@mail.sina.com就是无效的了,因此这个
是必须的。
最后是[a-z]{2,3},考虑到一般的域名最后不会出现数字,大写也很少见(我想一般应
该忽略大小写的),并且最少不少于两位,如cn,us,等,最多不超过三位,如com,org,
等,所以就写成了如上形式
分享到:
相关推荐
java用正则表达式判断电子邮件地址是否合法
平时我们会经常遇到对IP地址的检测,检验IP地址是否合理。当然你可以通过其他程序代码去实现,这里用正则表达式去实现更为简单。
主要介绍了java使用正则表达式判断手机号的方法,分析了手机号码段的原理及java使用正则表达式针对手机号的匹配操作实现技巧,需要的朋友可以参考下
Java正则表达式的使用,判断html、电话等是否符合规定、、、
如果你曾经用过Perl或任何其他内建正则表达式支持的语言,你一定知道用正则表达式处理文本和匹配模式是多么简单。如果你不熟悉这个术语,那么“正则表达式”(Regular Expression)就是一个字符构成的串,它定义了一...
Java正则表达式Java正则表达式Java正则表达式Java正则表达式
Java 正则表达式判断字符串是否包含中文
正则表达式判断密码强度是否符合标准,此处具有大小写,特殊字符,数字判断。对密码周期也进行判断。
java,正则表达式,详解,java正则表达式,PDF
java 使用正则表达式验证电话号码的格式 java 使用正则表达式验证电话号码的格式
java通过正则表达式匹配获取MAC(支持windows和Linux)
主要介绍了详解Java判断是否是整数,小数或实数的正则表达式,非常具有实用价值,需要的朋友可以参考下。
最完善的身份证号码合法性校验Java算法,适合Android平台,可以直接拿来在项目中使用,正则表达式。
主要介绍了Java使用正则表达式提取XML节点内容的方法,结合具体实例形式分析了java针对xml格式字符串的正则匹配相关操作技巧,需要的朋友可以参考下
java使用正则表达式进行校验验证,主要使用了Pattern和Matcher类,直接main方法运行就可以,亲测有效
Java根据正则表达式生成字符串,包括了Xeger和automaton
java正则表达式详解java正则表达式详解java正则表达式详解java正则表达式详解java正则表达式详解java正则表达式详解java正则表达式详解
java正则表达式java正则表达式java正则表达式java正则表达式java正则表达式java正则表达式
随机产生字符串,字符串中的字符只能由特殊字符(&@#$%*),大写字母(A-Z),...这样产生字符串的方式可以应用到如下场景,比如,我们有一个应用就是添加用户完毕之后,发邮件给指定用户包括一个长度为11位的初始化密码。
Java正则表达式 Java 正则表达式 图片版 携带方便,查阅方便!~