我正在扩展 CodeIgniter 表单验证库以检查带下划线的字母数字值不包括破折号。但我对正则表达式模式很陌生,需要一些帮助...
目前对于 alpha_numeric CI 有:
return ( ! preg_match("/^([a-z0-9])+$/i", $str)) ? FALSE : TRUE;
对于 alpha_dash CI 有:
return ( ! preg_match("/^([-a-z0-9_-])+$/i", $str)) ? FALSE : TRUE;
我正在创建“alpha_underscore”(同样是带下划线的字母数字):
这是正确的吗?
return ( ! preg_match("/^([a-z0-9_])+$/i", $str)) ? FALSE : TRUE;
我很困惑为什么在“alpha_dash”模式的开头和结尾有一个“-”
最佳答案
字符类 [-a-z0-9_-]
与 [a-z0-9_-]
或 [-a-z0- 9_]
。
其中一个 -
可以被删除。
关于php - 带下划线正则表达式模式的字母数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5234943/