使用Java 语言利用正则表达式 用户输入邮箱,校验邮箱是否合法 返回true/false
时间: 2023-08-04 11:15:15 浏览: 153
好的,我可以为您编写Java代码来实现此功能。以下是代码示例:
```java
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class EmailValidator {
public static boolean isValid(String email) {
// 定义正则表达式
String regex = "^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$";
// 编译正则表达式
Pattern pattern = Pattern.compile(regex);
// 匹配字符串
Matcher matcher = pattern.matcher(email);
// 返回匹配结果
return matcher.matches();
}
}
```
以上代码中,我们使用了Java中的正则表达式来匹配用户输入的邮箱地址。正则表达式 "^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$" 表示以字母、数字、点、下划线、加号、减号、百分号开头,后面跟着@符号,然后是字母、数字、点、减号的组合,最后以一个点和2个或以上的字母结尾。我们通过Pattern类和Matcher类来编译和匹配正则表达式。如果匹配成功,返回true,否则返回false。
使用示例:
```java
public class Main {
public static void main(String[] args) {
String email1 = "user@example.com";
String email2 = "user.example.com";
boolean isValid1 = EmailValidator.isValid(email1);
boolean isValid2 = EmailValidator.isValid(email2);
System.out.println("邮箱 " + email1 + " 是否合法:" + isValid1);
System.out.println("邮箱 " + email2 + " 是否合法:" + isValid2);
}
}
```
输出结果:
```
邮箱 user@example.com 是否合法:true
邮箱 user.example.com 是否合法:false
```
希望能够帮助到您!
阅读全文