我正在尝试创建一个允许在字母之间有任意数量的_的正则表达式,并且有5到10个字母。
有效值:
a_b_c_d_e
a_b_c _________________ d_e
中的
aa_bcd
无效值:
_abcde
adebc_
_________________________ b
到目前为止,我想出了这个,但不允许任何数量的_^[a-zA-Z][a-zA-Z_]{3,8}[a-zA-Z]$
使用
^[a-zA-Z](?:_*[a-zA-Z]){4,9}$
看到证据
NODE | EXPLANATION |
---|---|
^ | 字符串的开头 |
[a-zA-Z] | 任何字符:' a ' ' z ', ' ', ' z ' |
(?: | 组,但不捕获(在4到9次之间(匹配尽可能多的量)): |
_* | '_'(0次及以上(匹配最大次数)) |
[a-zA-Z] | 任何字符:' a ' ' z ', ' ', ' z ' |
){4,9} | 分组结束 |
$ | 在可选的n之前,以及字符串 |