0

这与忽略整个字符串模式的大小写有关,但这是一个不同的问题。

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

我正在使用的当前模式是

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

这适用于“packstation foo bar”,但如果我想匹配“foo packstation bar”,则它不起作用。

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

  • packstation - ( packstation | Packstation | PACKSTATION )
  • 打包站 - (打包站 | 打包站 | 打包站 | 打包站 | 打包站)
  • paketstation - ( paketstation | Paketstation | PAKETSTATION )
  • 帕吉特站-(帕吉特站|帕吉特站|帕吉特站|帕吉特站|帕吉特站)
4

1 回答 1

3

这就是你要找的

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

.*你在前瞻中失踪了。

此外,如果你想匹配它,使用积极的前瞻会更清楚..

于 2013-05-31T09:29:42.683 回答