是否有一个函数可以从字符串中删除所有非UTF-8字符?删除或编码非UTF-8字符
2
A
回答
10
如果您有一个可能包含无效字符的UTF-8字符串,则可以使用iconv
删除这些字符。这应该工作:
$text = iconv("utf-8", "utf-8//ignore", $text);
使其与任意的占位符可见是一个有点艰难 - 我想不出任何简单的方法来做到这一点,总之通过每一个字节行走,看看它是否是一个有效的字符。 Wikipedia article提供了关于如何做到这一点的更多信息。
相关问题
- 1. JSON字符编码vs utf8
- 2. 编码字符串UTF8
- 3. 删除4个字节的UTF8字符
- 4. 正则表达式从UTF8字符串中删除非字母数字字符
- 5. 从文件内容中删除非UTF8字符
- 6. 删除所有非单词字符,除非&或'模式
- 7. 取代非utf8字符
- 8. 写非UTF8字符在Perl
- 9. 替换非UTF8字符
- 10. 如何编写一个vba代码来删除和替换UTF8-字符
- 11. 更改字符串编码WIN1250为utf8
- 12. 字符串UTF8编码问题
- 13. Zend Framework转义utf8编码字符
- 14. asp.net字符编码问题utf8
- 15. 特殊字符PHP UTF8编码问题
- 16. Nginx的:UTF8编码字符导致
- 17. UTF8编码字符不上的NodeJS
- 18. 比较UTF8编码的字符
- 19. UTF8字符编码在Java中
- 20. Javascript字符串编码Windows-1250到UTF8
- 21. 如何删除或转换R中的Latin-1编码字符?
- 22. 不能编码字符串UTF8和UTF8在迅速
- 23. 如何从UTF8字符串中删除控制字符
- 24. 编码非英文字符
- 25. 我需要删除这使用编码或解码或替换删除\\ U00b4从字符串
- 26. 从字符串中删除不可打印的utf8字符(控制字除外)
- 27. Notepad ++删除非英文数字字符
- 28. 将UTF8字符串编码为ISO-8859-1字符串(VB.NET)
- 29. iOS:解码utf8字符串
- 30. 从C中的UTF8字符串中删除变音符号
Yur问题非常不清楚。如果一个字符串是Unicode,那么根据定义,该字符串中包含的所有字符都是Unicode字符。 –
@Michael在UTF-8的情况下不是真的。 http://en.wikipedia.org/wiki/UTF-8#Invalid_byte_sequences –
@Pekka,那不是一个Unicode字符串。虽然我可能会误解,并且OP没有Unicode字符串开头。 –