验证邮箱的正则表达式,有个问题好像,求解
正则表达式 Java
import java.util.regex.*;
public class TestMatches {
public static void main(String[] args) {
// TODO Auto-generated method stub
String []mails={"zpcandzhj@163.com","ssw@126","zp2ss@njue.cn"};
String mailRegEx="\\w{1,20}@\\w+\\.(com|cn|org|net|gov)";
Pattern mailPattern=Pattern.compile(mailRegEx);
Matcher matcher=null;
for(String mail:mails){
if(matcher==null){
matcher =mailPattern.matcher(mailRegEx);
}else{
matcher.reset(mail);
}
if(matcher.matches()){
System.out.println(mail+"是个有效的邮件地址!");
}else{
System.out.println(mail+"不是个有效的邮件地址!");
}
}
}
}
for (String mail : mails)
{
matcher = mailPattern.matcher(mail);
if (matcher.matches())
{
System.out.println(mail + "是个有效的邮件地址!");
}
else
{
System.out.println(mail + "不是个有效的邮件地址!");
}
}
zpcandzhj@163.com是个有效的邮件地址!
ssw@126不是个有效的邮件地址!
zp2ss@njue.cn是个有效的邮件地址!
if (matcher == null) {
matcher = mailPattern.matcher(mail); //matcher穿的参数是mail
} else {
matcher.reset(mail);
}
public static void main(String[] args) {
String[] mails = { "zpcandzhj@163.com", "ssw@126",
"ysjian_pingcx@163.com" };
String mailRegEx = "\\w{1,20}@\\w+\\.(com
[解决办法]
cn
[解决办法]
org
[解决办法]
net
[解决办法]
gov)";
for (String mail : mails) {
if (mail.matches(mailRegEx)) {
System.out.println(mail + "是个有效的邮件地址!");
} else {
System.out.println(mail + "不是个有效的邮件地址!");
}
}
}