我正在使用正则表达式来识别字符串是否是有效的电子邮件地址。图案:
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”,
您是否知道可以考虑这一点的正则表达式?
答案 0 :(得分:1)
在$
签名之前,如果您想在那里克服此问题,请使用[.,]?
或任何其他标点符号(在[]
内)。
+ "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})[.,]?$";
^^^^^