使用Regex删除电子邮件地址后的尾随字符

时间:2014-02-27 12:42:08

标签: java regex email-validation

我正在使用正则表达式来识别字符串是否是有效的电子邮件地址。图案:

private static final String EMAIL_PATTERN = 
    "^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@"
    + "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$";

问题是,如果该正则表达式模式包含尾随字符,则无法正确识别该电子邮件地址。例如:“test@example.com。”或“test@example.com”,

您是否知道可以考虑这一点的正则表达式?

1 个答案:

答案 0 :(得分:1)

$签名之前,如果您想在那里克服此问题,请使用[.,]?或任何其他标点符号(在[]内)。

+ "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})[.,]?$";
                                                   ^^^^^