加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 如何删除虚假的非ascii字符,但保留空格和换行符?

发布时间:2020-12-13 17:04:26 所属栏目:PHP教程 来源:网络整理
导读:我有一些文本文件包含一些非ASCII字符,我想删除它们,但保留格式字符. 我试过了 $description = preg_replace('/[x00-x1Fx80-xFF]/','',$description); 然而,这似乎剥离了换行符和其他格式,并且还有一些希伯来语的问题,然后转换了这个 ?????? ?????? ????
我有一些文本文件包含一些非ASCII字符,我想删除它们,但保留格式字符.

我试过了

$description = preg_replace('/[x00-x1Fx80-xFF]/','',$description);

然而,这似乎剥离了换行符和其他格式,并且还有一些希伯来语的问题,然后转换了这个

?????? ?????? ???????. ??? ?????! ??
????? ???
**************************************** ??? – ????????? ?????? ?????? ?? ??
??? ?????? ??? ** NEW to version 1.1 –
the expert talks!!! *

对此

1.4 :”,…”” …”” 50 …” .,. ! **************************************** – ** NEW to version 1.1 – the expert talks!!! *

解决方法

这不是替换非ASCII字符… Ascii字符在0-127范围内.所以基本上你要做的就是编写一个rexeg来将一个字符集转换为另一个字符集(不仅仅是替换掉一些字符,这要困难得多)……

至于你想做什么,我想你想要iconv function ……你需要知道输入编码,但是一旦你这样做,你可以告诉它忽略不可表示的字符:

$text = iconv('UTF-8','ASCII//IGNORE',$text);

您也可以使用ISO-8859-1或您想要的任何其他目标字符集.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读