php - 使用 preg_match 检查多个变量
问题描述
我正在运行检查以验证表单,并且我正在尝试使用 preg_match,如下所示:
}else if(!preg_match("/^[a-zA-Z0-9]*$/",$firstName)){
//code
}
但是,我想检查几个变量,例如$lastName, $address,
等...
如何在不调用 preg_match 到每个单一变量的情况下将它们包含在检查过程中?
谢谢!
解决方案
如果您只想检查字符串是否为字母数字,请使用http://php.net/manual/en/function.ctype-alnum.php。这会容易得多。
if (ctype_alnum($firstName) && ctype_alnum($lastName) && ctype_alnum($address)) {
//they are all alphanumerical
}
或者,如果您需要多次运行自己的验证,您可以创建自己的函数并以相同的方式调用
if (validate_inputs($firstName) && validate_inputs($lastName) && validate_inputs($address)) {
//it is an alphanumerical string
}
function validate_inputs($input) {
return preg_match("/^[a-zA-Z0-9]+$/", $input);//i changed the quantifier so the string must contain a character as well
}
推荐阅读
- javascript - 不使用 Regex 而是循环搜索和替换字符串,如何一次替换多个单词?
- gradle - 如何使用自定义任务作为工件
- python - 使用 python pyodbc 连接到 Docker 容器中的 Sybase 数据库的 utf-8 编码问题
- c# - Win 表单中标签或文本框的 C# 计数
- maven - 将 OptaPlanner 导出为 jar 时出现 ExceptionInInitializerError
- regex - 正则表达式替换方括号之间的字符,但不替换括号之间的字符
- java - Spring boot @ClientEndpoint 不能 @Autowired 我的服务
- ios - UIImageView Asset 在生产iOS13中设置了一条蓝线
- javascript - 使用正则表达式匹配提取数字、点和逗号
- javascript - 如何检查正则表达式是否无限