使用正则expression式的string否定
有可能在正则expression式中做string否定吗? 我需要匹配所有不包含string".."
的string。 我知道你可以使用^[^\.]*$
匹配所有不包含"."
string"."
但我需要匹配多个字符。 我知道我可以简单地匹配一个包含".."
的string,然后否定匹配的返回值,以达到相同的结果,但我只是想知道是否有可能。
你可以使用负面的lookaheads:
^(?!.*\.\.).*$
这会导致expression式不匹配,如果它可以在string中的任何位置find两个句点的序列。
^(?:(?!\.\.).)*$
只有在string中任何地方没有连续两个点的情况下才会匹配。