如何在 matches() 函数 (java) 中正确使用正则表达式



我正在尝试在 Java 中制作一个注册表单,该表单接受以下形式的字符串:ok@ok.ok,现在,我有 -

(email.matches("[^a-zA-Z0-9]+")

我需要它也接受@, _,-,.符号,但不确定如何将其添加到前面显示的正则表达式中。

除此之外,我知道有一种方法可以分开接受一定数量的字符,然后读取特定的符号(在我的情况下,电子邮件将是"@"和"."(,但我无法实现它,类似于

(email.matches("[^a-zA-Z0-9]{1-99}[1][@][^a-zA-Z0-9]{1-99}[1][.][^a-zA-Z0-9]+")

谢谢

您可以尝试以下操作:

[^@]+@[^.]+\..+

解释:

[^@]+ - match everything up until the @ character
@     - match the @ character
[^.]+ - match everything up until the . character
\.   - match the . character
.+    - match the rest
如果您想

访问电子邮件地址的不同部分,即@符号之前和之后提供的内容,您可以另外将表达式的这些部分括在括号中(在正则表达式的上下文中搜索"组"以了解更多信息(。

最新更新