我获取到的某些字符串是UTF-8编码的,包含一些特殊字符,比如Å¡、Ä‘、Ä等。我正在使用StringReplace()
将其转换为普通文本,但我只能转换一种类型的字符。因为PHP也有一个替换字符串的函数,可以支持数组,如此处所示:如何在PHP中用基于的字符替换特殊字符?
<?php
$vOriginalString = "¿Dónde está el niño que vive aquí? En el témpano o en el iglú. ÁFRICA, MÉXICO, ÍNDICE, CANCIÓN y NÚMERO.";
$vSomeSpecialChars = array("á", "é", "í", "ó", "ú", "Á", "É", "Í", "Ó", "Ú", "ñ", "Ñ");
$vReplacementChars = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U", "n", "N");
$vReplacedString = str_replace($vSomeSpecialChars, $vReplacementChars, $vOriginalString);
echo $vReplacedString; // outputs '¿Donde esta el nino que vive aqui? En el tempano o en el iglu. AFRICA, MEXICO, INDICE, CANCION y NUMERO.'
?>
我该如何在Delphi中实现这个功能?
StringReplace
不支持数组。
iconv
,请查看此答案。 - Kerrek SBdwCmpFlags
中至少使用NORM_IGNORENONSPACE
,并使用CompareString。 - NGLN