3

私は小さなロゴ推測ゲームをやろうとしています。ロゴ名の配列があり、それがどのロゴ名かを推測する必要があります。

以下のコードを使用して、ロゴ名から空白を削除しました。

var cleanLogoName = randomLogoName.replace(/ /g,'');

次に、このコードを使用して、ロゴ名の文字数を知りたいです。

var numberOfChar = cleanLogoName.length;

ただし、このゲームはハングマン ゲームであるため、同じ文字を複数回カウントする必要はありません。

例えば:

コカコーラ

c、a、o を 2 回ではなく 1 回だけ数える必要があります。

とにかくJavaScriptでこれを行うことはありますか?

4

2 に答える 2

4

正規表現を使用して、複数回出現する文字を検出して削除できます。

"coca cola".replace(/\s|(.)(?=.*\1)/g, "").length // 4

(先読み式キャプチャされた文字への後方参照を使用)

于 2013-08-15T12:39:00.847 に答える