正则表达式只有 2 个连续的特定字符

Regular expression only 2 consecutive specific characters

我正在尝试为抽象文件系统构建正则表达式。它应该:

这是我目前所拥有的(不允许使用 3 个 '.',但在只输入一个时有效。非常感谢任何输入。我尝试了第二组的正面和负面前瞻,但它仍然有同样的问题.

(?!.*\/{2})(?!.*\.{3})^[A-Za-z\/\.]*$

我的 Regex101 link:

https://regex101.com/r/xM8oY5/1

我添加了一个否定前瞻,它匹配一个被两个非点字符包围的点 .

/(?!(.*[^.])?\.([^.].*)?$)(?!.*\/{2})(?!.*\.{3})^[A-Za-z\/\.]*$/
 ^^^^^^^^^^^^^^^^^^^^^^^^^
    (.*[^.])?              -> some arbitrary characters and at least one not-dot
             \.            -> the dot
               ([^.].*)?$  -> one not-dot and some arbitrary characters

如果单个点出现在字符串的开头或结尾,则两个块(点之前和之后)都是可选的。

regex101.

上测试