用户在 Java 中使用正则表达式进行电子邮件验证时遇到困难。尽管 Eclipse 中的“查找和替换”操作中的正则表达式匹配,但它无法使用 Java Matcher 类查找电子邮件地址。
用户提供了以下正则表达式:
\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b
在Java中,他们编写的代码是:
Pattern p = Pattern.compile("\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b"); Matcher m = p.matcher("[email protected]"); if (m.find()) System.out.println("Correct!");
但是,无论电子邮件是否为正则表达式,都无法匹配格式是否良好。
提供的正则表达式与给定 Java 代码中使用的正则表达式类似。但是,存在一些关键差异:
已修改以下 Java 代码来解决这些问题:
Pattern p = Pattern.compile("[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}"); Matcher m = p.matcher("[email protected]"); if (m.find()) System.out.println("Correct!");
通过这些修改,正则表达式现在应该将 Java 中的电子邮件地址匹配为预计。
以上是为什么我的 Java 正则表达式不匹配电子邮件地址?的详细内容。更多信息请关注PHP中文网其他相关文章!