我用过这个...我在某个网站上看到了这个...但它对我没有帮助。
if(preg_match("/^[A-Za-z0-9-_\",'\s]+$/",$newPass)) {
//is valid..
}
答案 0 :(得分:1)
如果要测试字符串是否包含至少一个字母数字字符串和至少一个非字母数字字符串,请使用以下正则表达式:
/^(?=.*[a-z0-9])(?=.*[^a-z0-9])/i
解体:
/
启动正则表达式^
匹配字符串的开头(?=
如果有以下内容:
.*
任何事情(除了换行符),然后[a-z0-9]
字母数字字符)
前瞻(?=
如果有以下内容:
.*
任何事情(除了换行符),然后[^a-z0-9]
非字母数字字符)
前瞻/
结束正则表达式i
不区分大小写的用法:
if(preg_match("/^(?=.*[a-z0-9])(?=.*[^a-z0-9])/i",$newPass)) {
//is valid..
}
如果您需要两个字母和数字,请将第一个前瞻替换为两个:
/^(?=.*[a-z])(?=.*[0-9])(?=.*[^a-z0-9])/i