检查字符串中是否有连续重复 3 次或以上的字符(任何类型,甚至换行):
/^(?!.*(.)\1{2})/s
您还可以检查输入字符串是否与此正则表达式没有任何匹配。在这种情况下,您还可以知道该字符连续重复3次或更多次。请注意,这与上面完全相同,除了负向前看中的正则表达式(?!pattern)
被取出。
/^.*(.)\1{2}/s
如果您想添加验证字符串仅包含以下字符[a-z]
,并且你考虑aaA
无效:
/^(?!.*(.)\1{2})[a-z]+$/i
如你看到的i
标志(不区分大小写)影响捕获的文本与当前输入的比较方式。
Change +
to *
如果你想允许空字符串通过。
如果你想考虑aaA
为了有效,并且您希望同时允许大写和小写:
/^(?!.*(.)\1{2})[A-Za-z]+$/
乍一看,它可能与上一个相同,但由于没有i
标志,捕获的文本不会进行不区分大小写的匹配。
下面是失败的答案,你可以忽略它,但你可以阅读它来娱乐。
您可以使用此正则表达式来检查字符串是否有 3 个重复字符(任何类型,甚至是新行)。
/^(?!.*(.)(?:.*\1){2})/s
您还可以检查输入字符串是否与此正则表达式没有任何匹配。在这种情况下,您还可以知道该字符被重复超过或等于3次。请注意,这与上面完全相同,除了负向前看中的正则表达式(?!pattern)
被取出。
/^.*(.)(?:.*\1){2}/s
如果您想添加验证字符串仅包含以下字符[a-z]
,并且你考虑aaA
无效:
/^(?!.*(.)(?:.*\1){2})[a-z]+$/i
如你看到的i
标志(不区分大小写)影响捕获的文本与当前输入的比较方式。
如果你想考虑aaA
为了有效,并且您希望同时允许大写和小写:
/^(?!.*(.)(?:.*\1){2})[A-Za-z]+$/
乍一看,它可能与上一个相同,但由于没有i
标志,捕获的文本不会进行不区分大小写的匹配。