gpt4 book ai didi

java - 将破折号添加到 Java 正则表达式

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:41:27 24 4
gpt4 key购买 nike

我正在尝试修改从其他人构建的 Java 程序的属性文件中提取的现有正则表达式。

当前用于匹配电子邮件地址的正则表达式是 -

RR.emailRegex=^[a-zA-Z0-9_\\.]+@[a-zA-Z0-9_]+\\.[a-zA-Z0-9_]+$

这与诸如 abc.xyz@example.com 之类的电子邮件地址相匹配,但现在某些电子邮件地址中包含破折号,例如 abc-def.xyz@example.com> 并且那些未通过 Regex 模式匹配。

我的新 Regex 表达式是什么,可以将破折​​号添加到该正则表达式匹配中,还是有更好的方式来表示它?

最佳答案

根据您使用的正则表达式,您可以将破折​​号添加到您的字符类中:

RR.emailRegex=^[a-zA-Z0-9_\\.]+@[a-zA-Z0-9_]+\\.[a-zA-Z0-9_]+$
add
RR.emailRegex=^[a-zA-Z0-9_\\.-]+@[a-zA-Z0-9_-]+\\.[a-zA-Z0-9_-]+$

顺便说一句,你可以像这样缩短你的正则表达式:

RR.emailRegex=^[\\w.-]+@[\\w-]+\\.[\\w-]+$

无论如何,我会使用 Apache EmailValidator而是像这样:

if (EmailValidator.getInstance().isValid(email)) ....

关于java - 将破折号添加到 Java 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37010701/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com