受限制的字符集与正则表达式

时间:2014-06-11 14:55:05

标签: php regex

当任何用户创建或编辑公司名称时,我想确保它只包含以下字符:

  • 字母数字(A-Z,a-z,0-9)
  • ,. ? ! @& #'〜* _ - ; +和空格

如何使用正则表达式强制执行此操作?

1 个答案:

答案 0 :(得分:0)

$regEx = '/[^A-Za-z0-9,.?@&!#\'~* _-;+]/'

关键是在[之后]使用^ 这否定了角色列表。因此,任何不符合你标准的角色都会被找到。

您可以使用它,例如

if (preg_match($regEx, $input)) {
    throw new Exception('invalid character');
}