我是正则表达式的业余爱好者,如何在这个正则表达式中允许空格(不管有多少)?
if(preg_match('/[^A-Za-z0-9_-]/', $str)) return FALSE;
if(preg_match('/[^A-Za-z0-9_ -]/', $str)) return FALSE;
请注意,我在连字符之前添加了空格。如果空格位于连字符之后,我将指定从下划线到空格的字符范围。 (也可以通过在连字符前添加反斜杠来逃避该问题。)
这是假设“允许”的意思是:此正则表达式用于验证字符串,并且如果它matches,则字符串为不允许的 (hence return FALSE
)。所以否定字符类中的字符([^...]
)实际上是allowed人物。 (这在这个问题上引起了一些普遍的混乱。)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)