php - 如何使用 PHP 将多字节标点符号转换为单字节标点符号?

标签 php multibyte punctuation

例如, 和 , 都是逗号,但第一个占 2 个字节,而第二个只占 1 个字节。

如何将2字节1转换为1字节?

最佳答案

您可以使用iconv使用 translit 选项(例如,ASCII/TRANSLITISO-8859-1//TRANSLIT 等,具体取决于您提供内容的方式)。我还没有尝试过这个,但我相信它会起作用。

如果您不确定传入的字符集是什么,您可能需要使用 mb_detect_encoding来检测它,因为如果遇到不期望的字符,iconv 就会崩溃。

您可能希望阅读The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets如果您不熟悉字符集,可以轻松了解该主题。

关于php - 如何使用 PHP 将多字节标点符号转换为单字节标点符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1452715/

相关文章:

在 R 文本清理中删除标点符号但保留连字符短语

php - 这些 PHP mbstring 设置有什么作用?

java - 标题中的句点在 SOLR 中不可搜索

php - WordPress 将 <span> 移至 <p> 之外

javascript - 禁用 Nagle 的算法客户端/JavaScript

php - 仅为特定 Joomla 用户组加载 css 样式

PHP在另一个类中访问类

php - 如何在Centos中安装mbstring扩展?

php - strtolower() 用于 unicode/多字节字符串

python - 过滤掉仅包含数字和/或标点符号的字符串 - python