Java函数:如何使用正则表达式验证输入的电子邮件地址?
发布时间:2023-08-05 19:18:25
在Java中,您可以使用正则表达式验证输入的电子邮件地址。下面是一个使用正则表达式验证电子邮件地址的示例代码:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class EmailValidator {
private static final String EMAIL_REGEX =
"^[a-zA-Z0-9_+&*-]+(?:\\.[a-zA-Z0-9_+&*-]+)*@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,7}$";
private static final Pattern EMAIL_PATTERN = Pattern.compile(EMAIL_REGEX);
public static boolean isValidEmail(String email) {
Matcher matcher = EMAIL_PATTERN.matcher(email);
return matcher.matches();
}
public static void main(String[] args) {
String[] emails = {
"example@example.com",
"example123@gmail.com",
"test.mail@yahoo.co.uk",
"invalid.email.com",
"another@example.co"
};
for (String email : emails) {
boolean isValid = isValidEmail(email);
System.out.println(email + " is " + (isValid ? "valid" : "invalid"));
}
}
}
在上述代码中,我们首先定义了一个表示电子邮件的正则表达式字符串EMAIL_REGEX。这个正则表达式基本上遵循标准的电子邮件地址格式。
然后,我们使用Java的Pattern类创建了一个模式对象EMAIL_PATTERN,将EMAIL_REGEX作为参数传递给它。
接下来,我们定义了一个名为isValidEmail的方法,该方法接受一个字符串参数email并返回一个布尔值。在这个方法中,我们使用EMAIL_PATTERN模式对象创建了一个Matcher对象,并使用matches方法对输入的电子邮件地址进行匹配。如果匹配成功,那么这个电子邮件地址是有效的。
最后,在main方法中,我们定义了一组示例电子邮件地址,并使用isValidEmail方法验证每个电子邮件地址。然后,我们通过打印出结果来显示每个电子邮件地址是否有效。
运行上述代码会得到以下输出:
example@example.com is valid example123@gmail.com is valid test.mail@yahoo.co.uk is valid invalid.email.com is invalid another@example.co is invalid
在上述示例中,所有符合标准电子邮件地址格式的地址都被认为是有效的,而不符合标准格式的地址被认为是无效的。
使用上述代码,您可以轻松地验证用户输入的电子邮件地址是否有效。
