gpt4 book ai didi

java - 无效的正则表达式 java : unclosed character class

转载 作者:行者123 更新时间:2023-12-01 18:18:28 25 4
gpt4 key购买 nike

我正在尝试用 java 编写 emailValidator 函数,但遇到问题:

public static boolean EmailValidator(String mail) {
Pattern pattern;
Matcher matcher;

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

return matcher.matches();
}

错误

Exception in thread "main" java.util.regex.PatternSyntaxException: Unclosed character class near index 89
^[A-Za-z0-9\]{2,2}(\.[_A-Za-z0-9-]+)*@[A-Za-z0-9-]{2,2}(\.[A-Za-z0-9]+)*(\.[A-Za-z]{2,4})$

请问有人可以告诉我我必须做什么来解决这个问题,非常感谢

最佳答案

您已经转义了开头的结束字符类字符:

^[A-Za-z0-9\\]

记住,在字符串解释之后,它变成:

^[A-Za-z0-9\]

由于您可能想包含反斜杠,请尝试对其进行双重编码:

^[A-Za-z0-9\\\\]

这成为转义的反斜杠:

^[A-Za-z0-9\\]

关于java - 无效的正则表达式 java : unclosed character class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28302446/

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