无重复字符的正则表达式

本文关键字:正则表达式 字符 | 更新日期: 2023-09-27 18:26:13

我有下面的正则表达式。

^((?=.{10,32}$)(?=.*[A-Z])(?=.*[a-z]))

正则表达式具有以下功能:

  1. 密码将至少包含(1)个大写字母
  2. 密码将至少包含(1)个小写字母
  3. 密码长度应介于10到32之间

我想再添加一个验证。我不想要任何连续重复的字符。

你能帮帮我吗?

无重复字符的正则表达式

您可以使用负前瞻来执行此操作。

^(?=.{10,32}$)(?=.*[A-Z])(?=.*[a-z])(?!.*(.)'1).+$

实时演示

这将匹配任何一对相同的字符:

"(.)'1"

这里是小程序。

    static void Main(string[] args)
    {
        string a = "12223";
        string b = "P12345";

        bool z = Regex.IsMatch(a,@"(.)'1");
        bool x = Regex.IsMatch(b,@"(.)'1");
    }