preg_replace /正则表达式帮助

时间:2011-02-05 20:05:26

标签: php regex

我需要从字符串中删除不需要的字符。我想使用preg替换,但我在正则表达式上没用。

我的字符串应该只允许a-z A-Z 0-9和空格。没有其他角色。

例如:

some string's-are#bad

会变成:

some stringsarebad

非常感谢

1 个答案:

答案 0 :(得分:6)

您可以使用:

$string = preg_replace('/[^a-z0-9 ]/i', '', $string);

解释一下:

  • /打开分隔符 - 启动正则表达式
  • [^启动否定字符组 - 匹配除此选择内容之外的任何内容
  • a-z0-9匹配字母和数字字符和空格
  • ]关闭字符组
  • /结算分隔符
  • i不区分大小写的搜索 - 匹配A-Z以及