【发布时间】:2013-07-07 20:43:07
【问题描述】:
我正在寻求建议,我应该使用什么库和/或函数将国际文本转换为它的英文字符替代。
例如
Vous avez aimé l'épée offerte par les elfes à Frodon
转换成
Vous avez aime l'epee offerte par les elfes a Frodon
【问题讨论】:
-
@Janos - 我现在正在使用
unidecode,但我得到了错误的结果。例如Etüde出于某种原因转换为EtA1_4de -
我明白你的意思。你应该在你的问题中添加它。顺便说一句,我无法重现您的问题,unidecode 确实对我有用。
-
@Ωmega,你做了
unidecode(encode_utf8("Et\N{LATIN SMALL LETTER U WITH DIAERESIS}de"))而不是unidecode("Et\N{LATIN SMALL LETTER U WITH DIAERESIS}de")。 -
试图删除重音几乎总是错误的做法。我猜你想:How to match string with diacritic in perl?
-
@ikegami - 我不使用
encode_utf8,但它可能已经编码。我应该在使用unidecode之前以某种方式对其进行解码吗?
标签: perl