我希望有一个正则表达式匹配 8个字符完全 ,其中包含 仅 拉丁字母和数字,但不仅仅是数字。我尝试过以下方法:
^\d*[a-zA-Z][a-zA-Z\d]{8}$/
但它不起作用。如何更改正则表达式以将字符数限制为 8 ?
答案 0 :(得分:1)
^(?=.*\D)[a-zA-Z\d]{8}$
这个想法是:
^$
- 从头到尾(?=.*\D)
- 至少有一位非数字字符(使用positive lookahead)[a-zA-Z\d]{8}
- 8个字母或数字正向前瞻符合零个字符。它们基本上用于确保满足以下字符的条件。 .*\D
表示在任意数量的字符(.*
)之后的,有一个非数字字符(\D
)。