Ibr*_*him 7 php regex preg-match
如何制作强制执行的正则表达式:
什么时候使用php preg_match?
这是我得到的:
^[A-Za-z0-9]{10,50}$
Run Code Online (Sandbox Code Playgroud)
除了强制执行字母和数字之外,它似乎做了所有事情.
做:
^(?=.*(?:[A-Za-z].*\d|\d.*[A-Za-z]))[A-Za-z0-9]{10,50}$
Run Code Online (Sandbox Code Playgroud)
(?=.*(?:[A-Za-z].*\d|\d.*[A-Za-z])) 是零宽度正向前瞻,这确保至少有一个字母,并且存在一个数字
[A-Za-z0-9]{10,50} 确保匹配仅包含字母和数字
甚至更干净,使用两个前瞻而不是OR-ing(感谢chris85):
^(?=.*[A-Za-z])(?=.*\d)[A-Za-z0-9]{10,50}$
Run Code Online (Sandbox Code Playgroud)