2014-01-16 67 views
2

我想更改我的字符串中的所有特殊字符,但我想保留所有重音字符。是否可以使用preg_replace()如何更換所有特殊字符,但保留口音

我當前的代碼:

preg_replace('/[^A-Za-z0-9\-]/', '', $string); 
+2

你好Riskesh,這個話題是不一樣的你的話題。 :) – Dimitri

+0

** @ Closevoters:**上面提供的副本不是正確的。 – HamZa

回答

5

嘗試的Unicode:

preg_replace('/[^\p{L}0-9\-]/u', '', $string); 

\p{L}Unicode property匹配所有字母的任何語言,Unicode properties on php.net

+0

Hey stema!感謝您的回覆!這很好!如果我不想取代&和單引號,我該怎麼做? – Dimitri

+0

對於這個問題,PHP的文檔似乎更準確:http://www.php.net/manual/en/regexp.reference.unicode.php –

+0

感謝大家的幫助! – Dimitri

相關問題