import java.util.regex.*;
public class TestMatches { public static void main(String[] args) {
// TODO Auto-generated method stub
String []mails={"[email protected]","ssw@126","[email protected]"};
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+"不是个有效的邮件地址!");
}
}
}
}正则表达式Java
[email protected]不是个有效的邮件地址!
ssw@126不是个有效的邮件地址!
[email protected]是个有效的邮件地址!
{
matcher = mailPattern.matcher(mail);
if (matcher.matches())
{
System.out.println(mail + "是个有效的邮件地址!");
}
else
{
System.out.println(mail + "不是个有效的邮件地址!");
}
}结果:
[email protected]是个有效的邮件地址!
ssw@126不是个有效的邮件地址!
[email protected]是个有效的邮件地址!
matcher = mailPattern.matcher(mail); //matcher穿的参数是mail
} else {
matcher.reset(mail);
}不过单纯是为了验证邮箱,可以不用涉及到Pattern和Matcher类,笔者奉上稍微简洁的代码:public static void main(String[] args) {
String[] mails = { "[email protected]", "ssw@126",
"[email protected]" };
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 + "不是个有效的邮件地址!");
}
}
}谢谢楼主的分享