在PHP中仅允许某些字符

时间:2008-12-28 13:48:16

标签: php regex

我需要检查变量是否包含除a-z A-Z 0-9和“。”之外的任何内容。性格(句号)。任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:10)

有两种方法可以做到。

判断变量是否在允许的范围内包含任何一个的字符。这是通过使用负字符类[^ ...]:

来实现的
preg_match('/[^a-zA-Z0-9\.]/', $your_variable);

另一种方法是确保字符串中的每个字符都在的允许范围内:

!preg_match('/^[a-zA-Z0-9\.]*$/', $your_variable);

答案 1 :(得分:8)

if (preg_match("/[^A-Za-z0-9.]/", $myVar)) {
   // make something
}

这里的关键点是在[]组中使用“^” - 它匹配括号内的每个字符。

答案 2 :(得分:8)

if (preg_match('/[^A-Z\d.]/i', $var))
  print $var;