Php 删除所有非字母数字的ereg_替换跳过方括号

Php 删除所有非字母数字的ereg_替换跳过方括号,php,regex,string,Php,Regex,String,我有以下代码,可以从一些文本中删除所有非字母数字字符(不包括连字符)。然而,它不知何故遗漏了方括号 ereg_replace('[^A-z0-9-]', '', strtolower(str_replace(' ','-',$title))) 有人能提供建议吗?我犯了一个错误,写了a-z而不是a-zA-z包含[和]字符

我有以下代码,可以从一些文本中删除所有非字母数字字符(不包括连字符)。然而,它不知何故遗漏了方括号

ereg_replace('[^A-z0-9-]', '', strtolower(str_replace(' ','-',$title)))

有人能提供建议吗?

我犯了一个错误,写了
a-z
而不是
a-z
A-z
包含
[
]
字符