我有一些正则表达式长度的问题,这个正则表达式是这个正则表达式:
^[A-Za-z][A-Za-z0-9]*(?:[_ .][A-Za-z0-9]+)*$
只应接受以下字符串:
[str][White space or . or _][str][White space or . or _][str]...[str]
[白色空间或。或_]:不应以相同的顺序重复。
我的问题是如何将完整字符串的长度限制在{6,12} 之间,我试过:
^[[A-Za-z][A-Za-z0-9]*(?:[_ .][A-Za-z0-9]+)*]{6,12}$
但它不能很好地导致重复[白色空间或。或者_]旁边允许它们位于字符串的边缘。
最好的问候。
答案 0 :(得分:2)
您可以使用前瞻:
^(?=.{6,12}$)[A-Za-z][A-Za-z0-9]*(?:[_ .][A-Za-z0-9]+)*$
^^^^^^^^^^^^
确保即将到来的匹配长度为6到12个字符。