gpt4 book ai didi

java - 负向先行模式无论位于字符串中的哪个位置都匹配

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

此链接至 Ignoring case for a whole pattern of strings但这是一个不同的问题。

我想知道是否有办法忽略字符串的开头,或者负向前瞻是否只能从左到右工作并且需要一个起点?我尝试过的每件事似乎总能找到匹配的。

我当前使用的模式是

(?i)^(?!pack ?station|paket ?station).*$

这对于“packstation foo bar”来说效果很好,但如果我想匹配“foo packstation bar”,那么它就不起作用。

字符串最多只能有 26 个字符,如果它包含下面的字符串,那么我想匹配它。

  • packstation -(packstation | Packstation | PACKSTATION)
  • 包装站 -(包装站 | 包装站 | 包装站 | 包装站 | 包装站)
  • paketstation - ( paketstation | Paketstation | PAKETSTATION )
  • 小包站 - ( 小包站 | 小包站| 小包站 | 小包站 | 小包站 )

最佳答案

这就是您要找的

(?i)^(?=.*(pack ?station|paket ?station)).{1,26}$

您在前瞻中缺少 .*

如果你想匹配它,使用正向前瞻会更清晰..

关于java - 负向先行模式无论位于字符串中的哪个位置都匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16854055/

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