我想把我前段時間寫入PHP的Javascript轉換成。 此腳本用u替換特殊字符,例如é,e,ú,等等。正則表達式刪除所有字符
第一部分工作。然而,最後,我有一行檢查現在是否刪除了所有的字符。這最後一部分不起作用。
這就是:
if ($str != preg_replace("/[^a-zA-Z \-]+/g","",$str)) {
echo "error: ".$str." - ".preg_replace("/[^a-zA-Z \-]+/g","",$str);
}
現在,就像我說的,如果我讓與$str = "Péter";
例如運行,那麼$ str中的腳本將是「彼得」做到了這一點之前。 但在任何情況下,我得到這樣的輸出:
error: Peter -
我不知道這可能是因爲我用的是相同的正則表達式在我的JavaScript和有它的工作原理。
它如何將'e'轉換爲'e'?它真的從'彼得'到'彼得'嗎? – sln
因爲'preg_replace()'顯然返回一個空字符串,所以''Peter'!='''將會是true,在這種情況下,錯誤將會被echo'd –
@MichaelWheeler是的,那不是問題。問題是爲什麼它返回空,我剛剛得到答案。見下文。 – koljanep