Java 中的电子邮件验证
在使用任何电子邮件之前,我们必须对其进行验证。电子邮件在设计表单中起着至关重要的作用。使用 Java 中的正则表达式,我们可以验证电子邮件。我们导入 java.util.regex
包来处理 Java 中的正则表达式。
Java 为我们提供了一些使用正则表达式来验证电子邮件的方法。几种正则表达式模式可以帮助验证 Java 中的电子邮件。
第一种方法是使用最简单的正则表达式。^(.+)@(.+)$
模式是检查电子邮件中@
符号的最简单的表达式。在这种方法中,它不会关心符号前后的字符。它只会为该电子邮件提供 false。
下面的代码演示了上述方法。
import java.util.*;
import java.util.regex.*;
public class Email_Validation {
public static void main(String args[]) {
ArrayList<String> email = new ArrayList<String>();
email.add("example@domain.com");
// Adding an invalid emails in list
email.add("@helloworld.com");
// Regular Expression
String regx = "^(.+)@(.+)$";
// Compile regular expression to get the pattern
Pattern pattern = Pattern.compile(regx);
// Iterate emails array list
for (String email1 : email) {
// Create instance of matcher
Matcher matcher = pattern.matcher(email1);
System.out.println(email1 + " : " + matcher.matches() + "\n");
}
}
}
输出:
example@domain.com : true
@helloworld.com : false
在上面的例子中,我们创建了一个包含有效和无效电子邮件的电子邮件列表。我们使用 matcher
类来创建一个方法来检查给定的电子邮件是否与模式匹配。
第二种模式用于对用户名部分方法添加限制。这里 [A-Za-z0-9+_.-]+@(.+)$
是用于验证电子邮件的正则表达式。它检查电子邮件的用户名部分,并根据它验证电子邮件。这种方法有一些规则。用户名可以包含 A-Z 字符、a-z 字符、0-9 数字、点(.
)、下划线(_
)。用户名包含上述以外的字符,则不会被验证。
例如,
import java.util.*;
import java.util.regex.*;
public class Email_Validation {
public static void main(String args[]) {
ArrayList<String> email = new ArrayList<String>();
email.add("example@domain.com");
email.add("example2@domain.com");
// Adding an invalid emails in list
email.add("@helloworld.com");
email.add("12Bye#domain.com");
// Regular Expression
String regx = "^[A-Za-z0-9+_.-]+@(.+)$";
// Compile regular expression to get the pattern
Pattern pattern = Pattern.compile(regx);
// Iterate emails array list
for (String email1 : email) {
// Create instance of matcher
Matcher matcher = pattern.matcher(email1);
System.out.println(email1 + " : " + matcher.matches() + "\n");
}
}
}
输出:
example@domain.com : true
example2@domain.com : true
@helloworld.com : false
12Bye#domain.com : false
RFC 5322 方法允许用于电子邮件验证的第三种模式。^[a-zA-Z0-9_!#$%&'\*+/=?{|}~^.-]+@[a-zA-Z0-9.-]+$
是常规的用于验证电子邮件的表达式。使用了 RFC 允许用于电子邮件格式的所有字符。
例如,
import java.util.*;
import java.util.regex.*;
public class Email_Validation {
public static void main(String args[]) {
ArrayList<String> email = new ArrayList<String>();
email.add("example@domain.com");
email.add("exampletwo@domain.com");
email.add("12@domain.com");
// Adding an invalid emails in list
email.add("@helloworld.com");
// Regular Expression
String regx = "^[a-zA-Z0-9_!#$%&'*+/=?`{|}~^.-]+@[a-zA-Z0-9.-]+$";
// Compile regular expression to get the pattern
Pattern pattern = Pattern.compile(regx);
// Iterate emails array list
for (String email1 : email) {
// Create instance of matcher
Matcher matcher = pattern.matcher(email1);
System.out.println(email1 + " : " + matcher.matches() + "\n");
}
}
}
输出:
example@domain.com : true
exampletwo@domain.com : true
12@domain.com : true
@helloworld.com : false
相关文章
Java 中的计数器
发布时间:2023/11/16 浏览次数:177 分类:Java
-
它描述了 Java 中计数器变量的使用今天我们将讨论 Java 中的 counter 变量。在接下来的部分中,我们将看到如何使用 counter 变量。
Java 中 static 变量和 final 变量之间的区别
发布时间:2023/11/16 浏览次数:143 分类:Java
-
它显示了 Java 中静态变量和最终变量之间的区别。此外,将通过代码示例讨论这两个变量的使用。本文展示了 static 和 final 关键字之间的区别。让我们以表格格式和工作示例讨论差异。
在 Java 中设置 JAVA_HOME 变量
发布时间:2023/11/16 浏览次数:149 分类:Java
-
本文介绍如何在 Java 中设置 java_home 变量。在本文中,我们将学习如何在 windows 中设置 JAVA_HOME 变量。Java_Home 是一个引用变量,
在 Java 中强制转换变量
发布时间:2023/11/16 浏览次数:100 分类:Java
-
本文介绍如何在 Java 中强制转换变量。本文介绍如何在 Java 中强制转换变量或将变量转换为另一种类型。转换用于在编程语言中将一个值/变量转换/转换为另一种类型。
在 Java 中打印表格
发布时间:2023/11/16 浏览次数:160 分类:Java
-
这篇文章说明了如何在 Java 中打印表格要在 Java 中以表格结构打印任何信息,我们可以使用 java.io.PrintStream 类的 printf() 或 format() 方法。
Java system.out.println() 方法
发布时间:2023/11/16 浏览次数:184 分类:Java
-
这篇文章就是要了解 system.out.println() 方法在 Java 中是如何工作的。本文介绍了 System.out.println() 方法在 Java 中的工作原理,并列出了一些示例代码来理解该主题。
在 Java 中打印变量
发布时间:2023/11/16 浏览次数:149 分类:Java
-
本文讨论了在 Java 中打印变量的三种方法。我们还讨论了在 Java 中打印变量的各种方法的优缺点。我们可以使用变量将数据存储在计算机程序中。变量是我们执行 Java 程序时保存值的内存区域的
在 Java 中检查某个字符是否是数字
发布时间:2023/11/16 浏览次数:95 分类:Java
-
如何在 Java 中检查某个字符是否为数字。我们可以使用一个简单的内置方法来检查 Java 中的某个字符是否为数字。让我们深入了解一下。