我只需要替换某些特殊字符,其他一切必须保留,所以我不能使用[a-zA-Z0-9]
和类似代码来保存,其他一切都应该被替换。
我试过这样的事情:
$textrim = preg_replace("/(_%:\"`´\[\]\.\(\)\'!\?\.,#‘\<\>-—~\*)/", "", $title);
但它不起作用,我在网上找不到任何东西,我可以改变我的需求。
答案 0 :(得分:5)
你不需要正则表达式。
见第二个例子
// Provides: Hll Wrld f PHP
$vowels = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U");
$onlyconsonants = str_replace($vowels, "", "Hello World of PHP");
答案 1 :(得分:1)
您还可以创建包含要替换的字符的字符类:
像这样的东西
$out = preg_replace("/[_%:\"`´\[\]()'!?.,#‘<>—~*$-]/", "", $title);
也应该有用。
答案 2 :(得分:0)
好吧,在我问完后,我才弄明白。
$textrim = preg_replace('/(_|%|:|"|`|´|\[|\]|\.|\(|\)|\'|!|\?|\.|,|#|‘|\<|\>|-|—|~|\*|\$)/', '', $title);