当谈到正则表达式时,我是一个完全的新手。有人可以帮我将以下表达式转换为 preg 吗?
ereg('[a-zA-Z0-9]+[[:punct:]]+', $password)
伴随任何解决方案的解释将特别有用!!!!
preg_match('/[a-zA-Z0-9]+[[:punct:]]+/', $password)
您只需在开头放一个/,在结尾放一个/。在末尾的 / 之后,您可以放置一些不同的选项:
i - 不区分大小写
g - 进行全局搜索
有关 PHP 中正则表达式美丽世界的更多信息,请查看:
要回答您的真正问题,您需要像这样构建代码:
if ( preg_match( '/[a-z]+/', $password ) &&
preg_match( '/[A-Z]+/', $password ) &&
preg_match( '/[0-9]+/', $password ) &&
preg_match( '/[[:punct:]]+/', $password ) ) ...
如果您想确保密码中至少存在一个小写字母、至少一个大写字母、至少一个数字和至少一个标点符号。
您应该阅读的其他问题: