当一个符号替换几个符号时,是否存在从UTF-8到CP1251的音译?
Is there transliteration from UTF-8 to CP1251 when one symbol substitutes with several symbols?
我使用的是带有转译选项的iconv函数
当一个符号代替几个符号时,是否存在从UTF-8到CP1251的音译?我可以在哪里搜索到这些信息?我使用iconv
有一些,取决于实现和语言环境:
$ echo '℀⇒½' | iconv -f UTF8 -t CP1251//TRANSLIT
a/c=> 1/2
分别为U+2100ACCOUNT OF音译为a/c
, U+21D2右双箭头音译为=>
, U+00BDVULGAR FRACTION ONE HALF音译为1/2
(包括空格)。
我在GNU libc源代码中找到了这些,https://github.com/lattera/glibc/blob/master/locale/C-translit.h.in;不同的实现可能不会以相同的方式音译这些字符。
最明显的是
$ echo 'ß' | iconv -f UTF-8 -t CP1251//TRANSLIT
ss
此外,如果您的语言环境是德语,则根据德语规则对元音字母进行音译(是的,音译与语言环境有关)。
$ export LC_ALL=de_DE.UTF-8
$ echo 'Füße' | iconv -f utf-8 -t CP1251//TRANSLIT
Fuesse
(有些版本会打印F"usse
)
相关文章:
- HEX值到wchar_t字符(UTF-8)的转换
- 在C++中,将大的无符号浮点数四舍五入为整数的最佳方法是什么
- 有符号的int和int-有没有一种方法可以在C++中区分它们
- 将无符号char*转换为std::istream*C++
- 如何在C++中将一个无符号的 int 转换为两个无符号的短裤?
- vscode g++链路故障:体系结构x86_64的未定义符号
- 从矢量<无符号字符>转换为字符* 包括垃圾数据
- 如何理解将半精度指针转换为无符号长指针和相关的内存对齐
- Visual studio代码重构似乎不起作用(例如,重命名符号-f2)
- 使用gcc从静态链接的文件中查找可选符号
- C++中无符号字符溢出
- 使用无符号字符数组有效存储内存
- C++:Application.cpp中抛出了未解析的外部符号(解决方案在问题的末尾,供未来的读者参考)
- 如何将 UTF-8 文本从文件转换为某个可以迭代的容器,并检查每个符号是否为C++字母数字?
- 如何通过输入十进制数打印UTF-8符号?
- 从C++文件中读取和打印 UTF-8 符号
- 扩展'isalnum'以识别 UTF-8 变音符号
- qDebug输出QString UTF-8非ascii符号,如uxxxx
- 当一个符号替换几个符号时,是否存在从UTF-8到CP1251的音译?
- 如何在ncurses中使用get UTF-8重音符号