检查电子邮件地址在Java中是否有效
给定一个字符串,查找给定的字符串是否是有效的电子邮件。
Input : email = "review-team@geeksforgeeks.org"
Output : Yes
Input : email = "contribute@geeksforgeeks..org"
Output : No
Explanation : There is an extra dot(.) before org.
Prerequisite: Regular Expressions in Java
常用表达
正则表达式或正则表达式是一种用于定义字符串模式的 API,可用于在Java中搜索、操作和编辑字符串。电子邮件验证和密码是正则表达式广泛用于定义约束的几个字符串区域。正则表达式在Java.util.regex包下提供。
为了检查电子邮件地址是否有效,我们使用 OWASP Validation Regex 存储库中提供的以下正则表达式。
^[a-zA-Z0-9_+&*-] + (?:\\.[a-zA-Z0-9_+&*-]
+ )*@(?:[a-zA-Z0-9-]+\\.) + [a-zA-Z]{2, 7}$
代码 -
Java
// Java program to check if an email address
// is valid using Regex.
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.*;
class Test
{
public static boolean isValid(String email)
{
String emailRegex = "^[a-zA-Z0-9_+&*-]+(?:\\."+
"[a-zA-Z0-9_+&*-]+)*@" +
"(?:[a-zA-Z0-9-]+\\.)+[a-z" +
"A-Z]{2,7}$";
Pattern pat = Pattern.compile(emailRegex);
if (email == null)
return false;
return pat.matcher(email).matches();
}
public static void main(String[] args)
{
ArrayList address = new ArrayList<>();
address.add("review-team@geeksforgeeks.org");
address.add("writing.geeksforgeeks.org");
for(String i : address){
if (isValid(i))
System.out.println(i + " - Yes");
else
System.out.println(i + " - No");
}
}
}
输出
review-team@geeksforgeeks.org - Yes
writing.geeksforgeeks.org - No