
多语言通用罗马化转换工具
uroman是一款多语言通用罗马化工具,可将各种文字系统转换为标准拉丁字母。支持希腊语、印地语、乌尔都语和中文等多种语言,不仅进行字符替换,还能处理上下文和语言特定规则。提供Python和Perl版本,可通过命令行或Python库使用,适用于文本处理和语言分析任务。
uroman是一个通用罗马化转写器。它可以将任何文字系统的文本转换为标准拉丁字母。<br> 例如(希腊语):Νεπάλ → Nepal<br> 例如(印地语):नेपाल → nepaal<br> 例如(乌尔都语):نیپال → nypal<br> 例如(中文):三万一 → 31000
最新Python版本:1.3.1.1(2024年6月27日发布)<br>
最后一个Perl版本:1.2.8(2021年4月23日发布)<br>
作者:Ulf Hermjakob,南加州大学信息科学研究所
快速链接(本文档内):uroman命令行界面,导入uroman,旧版Perl版本,更新历史,可逆性,局限性
python3 -m pip install uroman
<a name="cli"></a>
python3 -m uroman "Игорь Стравинский" python3 -m uroman Игорь -l ukr python3 -m uroman Ντέιβις Καπ -l ell python3 -m uroman "\u03C0\u03B9" -d python3 -m uroman -l hin -i mini-test/hin.txt python3 -m uroman -l fas -i mini-test/fas.txt -o mini-test/fas-rom.jsonl -f edges python3 -m uroman < mini-test/multi-script.txt > mini-test/multi-script.uroman.txt python3 -m uroman -h
<b>注意:</b>对单个字符串使用_uroman_命令行界面可能对简单测试有用,但在大规模使用时效率低下,因为每次都需要加载数据资源。对整个文件进行罗马化或在Python内部使用_uroman_(如下所示)会更有效率。<br> <b>注意:</b>_mini-test_目录包含在本版本中。使用命令 <code>python3 -m uroman x --verbose</code> 可以找到它。 您可以将输出的mini-test/multi-script.uroman.txt与参考输出mini-test/multi-script.uroman-ref.txt进行比较。
<a name="package"></a>
import uroman as ur uroman = ur.Uroman() # 加载uroman数据(大约需要一秒左右) print(uroman.romanize_string('Игорь Стравинский')) print(uroman.romanize_string('Игорь', lcode='ukr')) uroman.romanize_file(input_filename='mini-test/multi-script.txt', output_filename='mini-test/multi-script.uroman.jsonl', rom_format=ur.RomFormat.LATTICE)
uroman = ur.Uroman(data_dir)
这个构造方法加载不同语言罗马化所需的数据。 这个构造方法调用可能需要大约一秒(实际时间)来加载所有罗马化数据,但对于多次后续罗马化调用来说,只需要执行一次。
<table> <tr><td>data_dir</td><td>数据目录(可选,默认:标准uroman数据目录)</td></tr> </table> <hr>uroman.romanize_string(s, lcode, rom_format)
这个方法接受一个字符串<i>s</i>,并根据<i>rom_format</i>返回其罗马化形式:一个字符串(默认)或一个边缘列表。
<table> <tr><td>s</td><td>要被罗马化的字符串,例如 "ایران"</td></tr> <tr><td>lcode</td><td>语言代码,可选,3个字母的代码,如英语的'eng'(ISO-639-3)</td></tr> <tr><td>rom_format</td><td>输出格式选项: <ul> <li> ur.RomFormat.STR (最佳字符串,默认,输出格式:字符串) <li> ur.RomFormat.EDGES (最佳边界,包含偏移信息,输出格式:JSONL) <li> ur.RomFormat.ALTS (包含替代边界的格子,输出格式:JSONL) <li> ur.RomFormat.LATTICE (包含替代和被取代边界的格子,输出格式:JSONL) </ul> </table> <hr>uroman.romanize_file(input_filename, output_filename, lcode)
此方法将文件 <i>input_filename</i> 罗马化到 <i>output_filename</i>。
<table> <tr><td>input_filename</td><td>默认:标准输入 (当input_filename值为 <i>None</i> 时)</td></tr> <tr><td width="200">output_filename</td><td>默认:标准输出 (当output_filename值为 <i>None</i> 时)</td></tr> <tr><td>lcode</td><td>语言代码(可选),3个字母的代码,如英语的'eng'(ISO-639-3)</td></tr> </table><a name="old_perl_version"></a>
<sup>GitHub上包含旧版Perl版本,但PyPI上不包含。</sup>
$ uroman.pl [-l <lang-code>] [--chart] [--no-cache] < STDIN 其中可选的 <lang-code> 是3个字母的语言代码,例如 ara, bel, bul, deu, ell, eng, fas, grc, ell, eng, heb, kaz, kir, lav, lit, mkd, mkd2, oss, pnt, pus, rus, srp, srp2, tur, uig, ukr, yid。 --chart 指定图表输出(JSON格式)以表示替代的罗马化。 --no-cache 禁用缓存。
<sup>注:目录 text 和 test 位于GitHub上 uroman 的根目录下。</sup>
uroman.pl < text/zho.txt uroman.pl -l tur < text/tur.txt uroman.pl -l heb --chart < text/heb.txt uroman.pl < test/multi-script.txt > test/multi-script.uroman-perl.txt
将输入识别为阿拉伯语、白俄罗斯语、保加利亚语、英语、德语、古希腊语、现代希腊语、本都希腊语、希伯来语、哈萨克语、吉尔吉斯语、拉脱维亚语、立陶宛语、马其顿语、奥塞梯语、波斯语、俄语、塞尔维亚语、土耳其语、乌克兰语、维吾尔语或意第绪语将改善这些语言的罗马化,因为这些语言中的一些字母与使用相同文字的其他语言(阿拉伯语与波斯语、俄语与乌克兰语、希伯来语与意第绪语)具有不同的音值。 此版本对其他语言无影响。
Ulf Hermjakob, Jonathan May, and Kevin Knight. 2018. Out-of-the-box universal romanization tool uroman. In Proceedings of the 56th Annual Meeting of Association for Computational Linguistics, Demo Track. ACL-2018 Best Demo Paper Award. ACL文集中的论文 | 海报 | BibTex
<a name="change_history"></a>
版本1.3.1的变更
版本1.2.8的变更
版本1.2.7的变更
版本1.2.6的变更
版本1.2.5的变更
版本1.2.4的变更
版本1.2的变更
1.1版本的变更(重大升级)
1.0版本的变更(重大升级)
0.7版本的变更(小升级)
0.6版本的变更(小升级)
0.5版本的变更(小升级)
0.4版本的变更(小升级)
0.3版本的新特性
<a name="reversibility"></a>
<a name="limitations"></a>
该工具的早期版本部分基于国家情报总监办公室(ODNI)和情报高级研究计划活动(IARPA)通过合同#FA8650-17-C-9116提供的支持,以及空军研究实验室(AFRL)根据协议编号FA8750-19-1-1000赞助的研究。本文所含观点和结论均为作者个人意见,不应被解释为必然代表ODNI、IARPA、空军实验室、DARPA或美国政府的官方政策,无论明示或暗示。美国政府有权复制和分发本文内容用于政府用途,即使其中包含任何版权声明。


最适合小白的AI自动化工作流平台
无需编码,轻松生成可复用、可变现的AI自动化工作流

大模型驱动的Excel数据处理工具
基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。


AI辅助编程,代码自动修复
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感 知和代码自动完成功能,是提升开发效率的理想工具。


AI论文写作指导平台
AIWritePaper论文写作是一站式AI论文写作 辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。


AI一键生成PPT,就用博思AIPPT!
博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。


AI赋能电商视觉革命,一站式智能商拍平台
潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。


企业专属的AI法律顾问
iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。


稳定高效的流量提升解决方案,助力品牌曝光
稳定高效的流量提升解决方案,助力品牌曝光


最新版Sora2模型免费使用,一键生成无水印视频
最新版Sora2模型免费使用,一键生成无水印视频


实时语音翻译/同声传译工具
Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。
最新AI工具、AI资讯
独家AI资源、AI项目落地

微信扫一扫关注公众号