gpt4 book ai didi

Java 负向前瞻不起作用

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

我有以下正则表达式 ^(?!0{8}),它应该匹配任何不是 8 个零的字符串。我不明白为什么这不起作用。即 12345678 不匹配。

我需要使用正则表达式,因为我在 @Pattern 注释中使用它,所以我不能只进行相等性检查。

我已经在 https://regex101.com/ 网站上对其进行了测试,看起来完全没问题。

有什么想法吗?

最佳答案

您在正则表达式中犯了一些错误。检查字符串是否仅包含 8 个零。 (根据您的问题,这是您想要避免的)可以使用正则表达式 "^(0{8})$" 来完成。如果一行中有 8 个零,并且这是字符串中唯一的内容,则此正则表达式将返回 true。 ^ 匹配开头和$匹配结尾。

您可以使用java对结果取反。

    String s = "123456789";
System.out.println(!s.matches("^(0{8})$"));

关于Java 负向前瞻不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38765925/

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