JavaScriptで文字列内のユニークな文字を取得する方法


  1. Setを使用する方法: Setオブジェクトは重複する値を持たない一意の値のコレクションです。文字列を1文字ずつ分割し、Setに追加することで重複を自動的に排除できます。
function getUniqueCharacters(str) {
  const uniqueChars = new Set(str);
  return Array.from(uniqueChars);
}
const inputString = "Hello World";
const uniqueCharsArray = getUniqueCharacters(inputString);
console.log(uniqueCharsArray); // ["H", "e", "l", "o", " ", "W", "r", "d"]
  1. オブジェクトを使用する方法: オブジェクトを使って文字列内の各文字をキーとし、その文字の出現回数を値とするカウンターを作成します。最後にカウンターのキーを取得することで、重複のない文字を取得できます。
function getUniqueCharacters(str) {
  const charCounter = {};
  for (let char of str) {
    charCounter[char] = (charCounter[char] || 0) + 1;
  }
  return Object.keys(charCounter);
}
const inputString = "Hello World";
const uniqueCharsArray = getUniqueCharacters(inputString);
console.log(uniqueCharsArray); // ["H", "e", "l", "o", " ", "W", "r", "d"]
  1. 正規表現を使用する方法: 正規表現を使って重複を削除することもできます。文字列内の重複しない文字を抽出するために、正規表現パターン /([^])\1*/g を使用します。
function getUniqueCharacters(str) {
  const uniqueCharsArray = str.match(/([^])\1*/g);
  return uniqueCharsArray.map(charGroup => charGroup[0]);
}
const inputString = "Hello World";
const uniqueCharsArray = getUniqueCharacters(inputString);
console.log(uniqueCharsArray); // ["H", "e", "l", "o", " ", "W", "r", "d"]

これらの方法を使用することで、JavaScriptで文字列内のユニークな文字を取得することができます。選択した方法に応じて、上記のコード例を使用してください。