替换外来词列表中的重音符号

时间:2012-06-14 04:48:12

标签: list localization

你知道是否有任何linux程序可以删除外来词列表中的重音(在utf8中)?像西班牙语,捷克语,法语。例如:

administrátoři(捷克语)administratori
français(french)francais
niñez(西班牙语)ninez等。

我知道我可以用sed手动完成它,但考虑到我正在使用很多语言,这是相对耗时的。我认为一个可以做到这一点的程序可能已经存在了。

2 个答案:

答案 0 :(得分:2)

您想要的是 Unicode分解 - Unicode组合的反向过程(将基本字符与变音符号组合在一起)。有许多相关的SO问题使用:

  1. JavaScript
  2. ActionScript
  3. Python
  4. 您可以将其作为起点。

    Python存储库有unicodedata.decomposition,它返回一个分解的映射。

    您的系统可能还有iconvsuitable规范化,它也可能会让您到达那里!

答案 1 :(得分:0)

您是否尝试使用重新编码(https://github.com/pinard/Recode/)?它会在努力保存信息时删除重音,也可以生成用C表示的xlat表。

$ cat testfile 
administrátoři (czech) administratori
français (french) francais
niñez (spanish) ninez etc.
$ LANG= recode -f UTF-8..texte <testfile 
administrtori (czech) administratori
franc,ais (french) francais
niez (spanish) ninez etc.
相关问题