正则表达式匹配不超过特定数量的大写字符
Regex to match not more then a specific number of upper case characters
我如何创建一个正则表达式来检查字符串中是否没有超过 n
个大写字母,即
如果n=3
那么
aAnnBccD#!
AAbbC
应该匹配,而
AbCdeFgHiJ
应该会失败。
请指教。
只需尝试使用以下正则表达式:
^[^A-Z]*([A-Z][^A-Z]*){0,3}$
类似
^([^A-Z\n]*[A-Z][^A-Z\n]*){0,3}$
只是为了检查,例如 lookahead:
^(?!(?:.*?[A-Z]){4})
这在包含 {4}
(超过 3 个)...A-Z
的字符串处失败
我如何创建一个正则表达式来检查字符串中是否没有超过 n
个大写字母,即
如果n=3
那么
aAnnBccD#!
AAbbC
应该匹配,而
AbCdeFgHiJ
应该会失败。
请指教。
只需尝试使用以下正则表达式:
^[^A-Z]*([A-Z][^A-Z]*){0,3}$
类似
^([^A-Z\n]*[A-Z][^A-Z\n]*){0,3}$
只是为了检查,例如 lookahead:
^(?!(?:.*?[A-Z]){4})
这在包含 {4}
(超过 3 个)...A-Z