Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

文字列アナグラムの確認JavaScript


アナグラム

アナグラムは文字列のペアであり、特定のパターンで並べ替えると、一方がもう一方を生成します。

例-

「hello」と「lolhe」はアナグラムです。「lolhe」を並べ替えて文字列「hello」を形成したり、その逆を行ったりできるためです。

str1とstr2の2つの文字列を受け取るJavaScript関数を作成する必要があります。文字列が相互のアナグラムである場合、関数はtrueを返し、そうでない場合はfalseを返す必要があります。

各入力文字列の文字数を集計するマップを作成できます。次に、マップを比較して、それらが同一であるかどうかを確認できます。

const str1 = 'hello';
const str2 = 'lolhe';
const charCount = string => {
   const table = {};
   for (let char of string.replace(/\W/g, "").toLowerCase()) table[char] = table[char] + 1 || 1;
   return table;
};
const anagrams = (stringA, stringB) => {
   const charCountA = charCount(stringA); const charCountB = charCount(stringB);
   if (Object.keys(charCountA).length !== Object.keys(charCountB).length)
      return false;
      for (let char in charCountA)
      if (charCountA[char] !== charCountB[char])
         return false;
      return true;
};
console.log(anagrams(str1, str2));

出力

そして、コンソールの出力は-

になります
true

  1. JavaScriptConst

    JavaScriptのconst宣言は、他の値に再割り当てしたり、後で再宣言したりできない変数を作成します。 ES2015で導入されました。 以下はJavaScriptconst宣言のコードです- 例 <!DOCTYPE html> <html> <head> <style>    body {       font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;    } </sty

  2. JavaScriptで文字列を検索する方法は?

    以下はJavaScriptで文字列を検索するためのコードです- 例 <!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>