韓国語のアルファベット (ハングル) からラテン アルファベット (ローマ字化) への文字変換を作成したいのですが、(何度も試行して成功せずに) 単純な関連付けられた配列を使用するのは適切ではないようです。行う。
これまで私が一生懸命取り組んできた方法は次のとおりです。
https://gist.github.com/1154969
ひらがなを韓国語の音節に置き換えてみましたが、うまくいきませんでした。
誰にも解決策がありますか?
韓国語のアルファベット (ハングル) からラテン アルファベット (ローマ字化) への文字変換を作成したいのですが、(何度も試行して成功せずに) 単純な関連付けられた配列を使用するのは適切ではないようです。行う。
これまで私が一生懸命取り組んできた方法は次のとおりです。
https://gist.github.com/1154969
ひらがなを韓国語の音節に置き換えてみましたが、うまくいきませんでした。
誰にも解決策がありますか?
元の文字列の特定の記号 (ハングル音節) を他の事前定義されたシーケンス (ローマ字化) に拡張したいだけなので、ハングルをキーとして保存し、ローマ字化を値として保存するオブジェクト検索と、String.replace
置換を生成する機能を組み合わせて使用します。関数を通して。
私も日本語をよく知っているので、例の一部としてカタカナを使用します:)しかし、それが機能するためには、置換テーブルに正しいハングルを入力するだけで済みます:
var hangul_syllable_to_roman = {
'가' : 'ga',
'강' : 'gang',
'カ' : 'ka',
'タ' : 'ta',
'ナ' : 'na'
}
function one_hangul_syllable_to_roman(syllable) {
var roman = hangul_syllable_to_roman[syllable]
// if we have suitable replacement - do it, if not - just return original back
if (roman) { return roman } else { return syllable }
}
function hangul_to_roman(hangul) {
return hangul.replace(/./gm, one_hangul_syllable_to_roman)
}
document.write(hangul_to_roman('가강 カタカナ some other text'))
// gagang katakana some other text