如何替换字符串中的所有非字母数字字符?

时间:2019-01-21 09:15:38

标签: php regex

我想将所有非字母数字字符替换为:[^ a-zA-Z0-9]为'_'。

我在php.net中阅读到ereg_replace已过时。这是为什么?是否有很好的Perl正则表达式指南?

如何使用preg_replace函数实现这一目标?

2 个答案:

答案 0 :(得分:2)

您可以改用preg_replace

尝试用preg_replace('/\W/', '', $subject)替换$ subject内的所有非单词字符。

答案 1 :(得分:1)

要使用正则表达式模式进行替换,应使用preg_filter,preg_replace或preg_replace_callback。这是带有示例代码的手册链接。

http://php.net/manual/en/function.preg-filter.php

http://php.net/manual/en/function.preg-replace.php

http://php.net/manual/en/function.preg-replace-callback.php