gpt4 book ai didi

java - 使用 Lookahead Regex 时出现模式异常

转载 作者:行者123 更新时间:2023-12-02 10:09:44 26 4
gpt4 key购买 nike

我有以下正则表达式来验证字符串中的条件,我在在线正则表达式 validator 上编写了它,但是当我在 Java 代码中使用它时出现异常:

"(^([a-z]{1,6})(?(?=(_))(([_])([0-9]{0,4})?)|[a-zA-Z]{0,})[a-zA-Z]{0,}?@sample[.]com)"

异常是线程“main”java.util.regex.PatternSyntaxException中的异常:索引16附近的未知内联修饰符(^([a-z]{1,6})(?(?=())(([])([0-9]{0,4})?)|[a- zA-Z]{0,})[a-zA-Z]{0,}?@sample[.]com)

非常感谢任何帮助。

最佳答案

(^([a-z]{1,6})(?(?=(_))(([_])([0-9]{0,4})?)|[a-zA-Z]{0,})[a-zA-Z]{0,}?@sample[.]com)
|
^ --- if clause is not supported in JAVA

你的问题是因为这个(?(?=)

如果您的意思是它是非捕获组,那么它应该是 (?:(?=)

Java不支持if clause (?(?=))。 PCRE 支持这一点。

关于java - 使用 Lookahead Regex 时出现模式异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55084533/

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