求一个php函数:过滤汉字和特殊符号,只保留英文和数字 只看楼主

本帖最后由 joyanhui 于 2012-12-21 10:53 编辑

例如:
$string="好123网hao12.co★m《link》";

去掉汉字和符号,应该是
123hao12comlink


我本想每个字符拆分的数组,然后一个一个检查,感觉好像很笨的样子。

据说正则替换可以搞定,求代码帝打赏一个 。

自己写了一个,只能替换掉汉字,不能替换符号

preg_replace("/[\\x80-\\xff]/","",$string);
  • 2# mix
  • 2012-12-21 10:50:50
正则 好像是加个\?
=高手
还是等高手吧,我不会
  • 4# 完美
  • 2012-12-21 10:53:31
$str = preg_replace('/[^\w]+/','',$str);
引用: 完美 发表于 2012-12-21 10:53
$str = preg_replace('/[^\w]+/','',$str);

谢谢,但是不能替换下划线呢
  • 6# 完美
  • 2012-12-21 10:55:48
引用: joyanhui 发表于 2012-12-21 10:54
谢谢,但是不能替换下划线呢

$str = preg_replace('/[^0-9a-zA-Z]+/','',$str);