簡體   English   中英

正則表達式檢查是否包含超過 2 個重復字符

[英]Regex expression to check if contains more than 2 repeated characters

如果重復超過兩次相同的字符,我正在檢查我的驗證表單。

我試過這個表達式 ([a-zA-Z0-9])\1{2,} 但它不能正常工作,因為如果我添加 aaA 它會找到字符串,它不應該因為“aaA”是允許的。 它也不檢查它是否重復一個特殊字符。

這是我應用代碼的方式:

this.form = this.formBuilder.group(
      {
        newpassword: new FormControl(
          '',
          Validators.compose([
            Validators.required,
            CustomValidators.patternValidator(/[(\[a-zA-Z0-9\])\\1{2,}]/, {
              hasRepeatedCharacters: true,
            }),
          ])
        ),
      },
      { validators: this.password }
    );

任何想法?

使用以下正則表達式檢測任何重復 2 次或更多次的字符:

(.)\1{2,}

為了捕獲aaA (不考慮大小寫的重復字母),您需要添加不區分大小寫的i標志。

如果我正確理解您認為無效的內容,您需要:

/(.)\1{2,}/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM