Regex 赢得';不允许有2个或更多点的匹配?
现在我有一个字符串列表,其中一些字符串中有连续的点。我想匹配所有东西,除了那些带连续点的字符串。例如:Regex 赢得';不允许有2个或更多点的匹配?,regex,regex-negation,regex-lookarounds,Regex,Regex Negation,Regex Lookarounds,现在我有一个字符串列表,其中一些字符串中有连续的点。我想匹配所有东西,除了那些带连续点的字符串。例如: fo.o.ba.r = legal --> fo..obar != legal 这是我试过使用的正则表达式,但它似乎不像我想象的那样工作 (?!\.{2,}) 这里有人能帮我找到正确的路吗?谢谢大家! 从字符串开始到字符串结束,重复组内的任何字符,同时对两个点使用负前瞻: ^(?:(?!\.{2}).)+$ 您可以使用一个负向前看来从字符串开始断言右边的内容不包含2个点: ^(?。
fo.o.ba.r = legal --> fo..obar != legal
这是我试过使用的正则表达式,但它似乎不像我想象的那样工作
(?!\.{2,})
这里有人能帮我找到正确的路吗?谢谢大家! 从字符串开始到字符串结束,重复组内的任何字符,同时对两个点使用负前瞻:
^(?:(?!\.{2}).)+$
您可以使用一个负向前看来从字符串开始断言右边的内容不包含2个点:
^(?。*.{2})。+$
这将符合:
断言字符串的开头^
负前瞻(?!
匹配任意字符0+次*
匹配一个点2次\.{2}
关闭反向前瞻)
匹配任意字符1+次+
断言字符串的结尾$