使用正则expression式的string否定

有可能在正则expression式中做string否定吗? 我需要匹配所有不包含string".."的string。 我知道你可以使用^[^\.]*$匹配所有不包含"."string"." 但我需要匹配多个字符。 我知道我可以简单地匹配一个包含".."的string,然后否定匹配的返回值,以达到相同的结果,但我只是想知道是否有可能。

你可以使用负面的lookaheads:

 ^(?!.*\.\.).*$ 

这会导致expression式不匹配,如果它可以在string中的任何位置find两个句点的序列。

 ^(?:(?!\.\.).)*$ 

只有在string中任何地方没有连续两个点的情况下才会匹配。