如何解析字符串以删除php中的所有非英文字符
现在我想删除
之类的内容სოფოსოფოი
谢谢:)
答案 0 :(得分:52)
$str = preg_replace('/[^\00-\255]+/u', '', $str);
答案 1 :(得分:8)
您最好的选择是使用iconv
,它会将字符串转换为请求的字符编码。
iconv('UTF-8', 'ASCII//TRANSLIT', $yourtext);
//translit
您可以获得有意义的ASCII转换(例如ß - > ss)。使用// IGNORE将完全删除非ascii字符。
iconv('UTF-8', 'ASCII//IGNORE', $yourtext);
答案 2 :(得分:7)
$string = "some სოფო text";
$string = preg_replace('/[^a-z0-9_ ]/i', '', $string);
echo $string;
当然,您需要扩展preg_replace模式,但这是一种方法。可能有更好的方法,我只是不知道。
答案 3 :(得分:-3)
使用此代码:
$illegalChars = array("",);
$string = str_replace($illegalChars,"",$string );
echo $string;