gpt4 book ai didi

bash - iconv - 尽可能音译,否则不转换

转载 作者:行者123 更新时间:2023-12-05 05:23:42 27 4
gpt4 key购买 nike

考虑以下示例文本行:

α Arietis, called Hamal, is the brightest star in Aries. Its traditional name is derived from the Arabic word for “lamb” or “head of the ram” (ras al-hamal).

它有三个不同的 UTF-8 字符,α,一个左智能引号和一个右智能引号。

我的目标是尽可能将 UTF-8 音译为常规 ASCII,但保留所有不可转换的字符。 (在上面的示例文本中,智能引号可以音译为",但是α不能。)

我当前的命令是:

iconv -f UTF-8 -t ASCII//TRANSLIT < iconv.sample

但是,它无法转换 α 并以 iconv: (stdin):1:0: cannot convert 终止。
如果我将 //IGNORE 添加到目标或使用 -c 选项,它会完全删除 α

如果可能,我如何进行音译,如果不能,则回退到原始输入字符?

最佳答案

我不确定在使用 iconv 时是否可行,因为输出编码必须符合(也就是说,如果您指定 ASCII,它只会吐出 ASCII,无论如何)。

如果你有uconv可用,您可以指定远离输出编码的音译操作:

uconv -f "UTF-8" -t "UTF-8" -x "Latin-ASCII"

举个例子:

$ echo "α Arietis “head of the ram”" | uconv -f "UTF-8" -t "UTF-8" -x "Latin-ASCII"
α Arietis "head of the ram"

关于bash - iconv - 尽可能音译,否则不转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36844123/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com