正则表达式以不同方式

时间:2014-04-03 15:27:19

标签: php regex

我在这个网站上测试:Regex Tester

我想出了这个表达式/[\w ]/,它完全符合我想要的网站,即选择特殊字符。

但是当我在我的PHP文件中使用它时,它无法正常工作。

在我的PHP中我有这个功能:

function removeSpecialChar($str) {
    return str_replace("/[^\w ]/", "", $str);
}

例如,假设$str="asdf1234 !"#¤asd"

它应该返回"asdf1234 asd",但它不是,任何想法?

1 个答案:

答案 0 :(得分:3)

当您需要基于正则表达式的替换时,请使用preg_replacestr_replace将按原样处理给定的字符串 - 对元字符没有任何特殊含义。

$str = 'asdf1234 !\"#¤asd';

function removeSpecialChar($str) {
    return preg_replace('/[^\w ]/', '', $str);
}

echo removeSpecialChar($str); // asdf1234 asd