java - 需要一种接受多封电子邮件的模式

标签 java regex

我正在使用 java regex 包来验证电子邮件,如下所示:

Pattern p = Pattern.compile("^[ _A-Za-z0-9-]+(\\.[ _A-Za-z0-9-]+)*@" 
                          + "[A-Za-z0-9]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,4})$");

此模式非常适合接受一封电子邮件抛出文本框。但是,现在我需要一种模式来验证以逗号分隔的多封电子邮件。

谁能告诉我这个模式吗?

最佳答案

类似于以下内容:

String regex = "[ _A-Za-z0-9-]+(\\.[ _A-Za-z0-9-]+)*@[A-Za-z0-9]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,4})";

Pattern p = Pattern.compile("^(?:" + regex + "\\s*,\\s* + ")*" + regex + "$");

或者,首先使用 split("\\s*,\\s*") 分割字符串,然后迭代数组并使用您的模式验证每个电子邮件地址。

关于java - 需要一种接受多封电子邮件的模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8490942/

相关文章:

java - 解析 'multipart/alternative' 内容类型

java - 具有半透明 JTextArea 的工件

regex - 获取最后一个字符直到特定字符

正则表达式匹配括号之间的字符串

java - 在 Google App Engine 中配置数据库

java - 如何获取 .jsp(portlet)的 URL?

java - 如何在 java 中查找 char 的 ansi 值?

python - 查找列表项的索引

javascript - 为什么 string.match(...)[0] 会抛出异常?

java - 正则表达式电话号码模式