-1

オンライン翻訳機を使って、子供向けの秘密の暗号言語を作ろうとしています。しかし、私は問題に遭遇しました。A から Z までの単語の文字を置き換えます。しかし、「hi」のような単語があり、文字「h」を「i」に置き換えると、コードは「h」に到達すると「ii」と表示されます。 '。当然、両方の i が接続された文字に置き換えられます。これが起こらないようにする方法はありますか?

コード例:

var tekst, tevertalen;

tevertalen = prompt("Geef je boodschap in: ",'Default');

...
tekst = tekst.replace("P","S");
tekst = tekst.replace("Q","T");
tekst = tekst.replace("R","A");
...

前もって感謝します!

4

1 に答える 1

3

文字列を 1 文字ずつ反復処理し、ルックアップ テーブルを使用します。

var mapping = {
    'P': 'S',
    'Q': 'T',
    'R': 'A',
    ...
};

var encoded = '';
var plaintext = 'HI';

for (var i = 0; i < plaintext.length; i++) {
    encoded += mapping[plaintext.charAt(i)];
}
于 2013-05-25T18:27:43.080 に答える