前言:本文介绍的是 @rezeus 维护的 Korauter (Korean Romanizer)的 npm 包 @rezeus/korauter,主要用于将韩文转换成罗马字。本文希望通过详细的介绍和示例代码,帮助初学者学习和掌握这个工具的使用方法。
1. 安装与导入
使用 npm 安装 @rezeus/korauter:
npm install @rezeus/korauter
在 JavaScript 文件中引入:
const korauter = require('@rezeus/korauter');
如果你正在使用 ES6 或之后的版本,则可以按如下方式引入:
import korauter from '@rezeus/korauter';
2. 基本用法
2.1 数组输入
Korauter 可以接受一个包含韩文的字符串数组,并将其转换成罗马字字符串数组。例如:
const koreanArray = ['안녕하세요', '반갑습니다']; const romanArray = korauter.romanizeArray(koreanArray); console.log(romanArray); // ["annyeonghaseyo", "bangapseumnida"]
2.2 字符串输入
Korauter 可以接受一个单独的韩文字符串,并将其转换成一个相应的罗马字字符串。例如:
const koreanString = '안녕하세요'; const romanString = korauter.romanize(koreanString); console.log(romanString); // "annyeonghaseyo"
在这个例子中,Korauter 返回了 "annyeonghaseyo"。当必要时,这个工具会添加或省略空格或其他标点符号。
如果你想保留输入文本的空格或其他标点符号,你可以传递一个配置对象,例如:
const koreanString = '안녕하세요? 반갑습니다!'; const romanString = korauter.romanize(koreanString, { keepPunctuation: true }); console.log(romanString); // "annyeonghaseyo? bangapseumnida!"
在这里设置了一个名为 keepPunctuation 的选项,将其设置为 true,这样就可以保留输入文本中的句点和问号。
2.3 音调转换
Korauter 还支持将韩文文本转换为带有韩语特定音调的罗马字。它返回一个对象,包括带有音调的罗马字数组和带有数字的音调信息数组。
const koreanString = '반갑습니다'; const romanWithTones = korauter.romanizeWithTones(koreanString); console.log(romanWithTones); // { romaji: ['bangapsseumnida'], tones: ['24'] }
在这个例子中,Korauter 返回了一个包含 romaji
和 tones
的对象。romaji
数组包含没有音调的纯罗马字,而 tones
数组包含用数字表示的音调。在这里,tones
数组的值是 "24",表示了韩文文本中每个音节的音调。
除此之外,还可以将带有数字音调的罗马字转换成可以直接使用的表示音调的带有符号音调的罗马字。例如:
const romanWithTones = { romaji: ['joh-eun'], tones: ['111'], }; const romanWithSymbols = korauter.convertTonesToSymbols(romanWithTones.romaji, romanWithTones.tones); console.log(romanWithSymbols); // ['jóh-eún']
在这个例子中,Korauter 返回了一个新的罗马字数组,其中的字符带有符号表示音调。在这里,"ó" 表示 "joh" 中的第一个音节的高音调,"eún" 则没有音调。
3. 示例代码
在这个例子中,我们将围绕 Korauter 的基本用法构建一个简单的命令行应用程序,用于将命令行中输入的韩文字符串转换为相应的罗马字。
#!/usr/bin/env node const korauter = require('@rezeus/korauter') const koreanString = process.argv.slice(2)[0] const romanizedString = korauter.romanize(koreanString) console.log(romanizedString)
这个应用程序将接受一个字符串,将其作为第一个命令行参数传递给应用程序,然后使用 Korauter 将其转换成罗马字,并将其打印出来。要在终端中运行这个应用程序,请将其保存为一个 JavaScript 文件(例如,korean-to-roman.js),并使用 node 运行它:
$ node korean-to-roman.js 안녕하세요 annyeonghaseyo
4. 总结
Korauter 是一个非常有用的工具,在将韩文转换为罗马字时具有良好的精度和稳定性。在本文中,我们详细介绍了 Korauter 的 npm 包 @rezeus/korauter 的安装和使用方法,包括基本用法、音调转换和示例代码。我们希望这篇文章能够帮助你学习和掌握 Korauter,并且能够用它来构建有用的应用程序。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60067354890c4f7277583999