freeCodeCamp/curriculum/challenges/german/02-javascript-algorithms-an.../javascript-algorithms-and-d.../palindrome-checker.md

2.7 KiB

id title challengeType forumTopicId dashedName
aaa48de84e1ecc7c742e1124 Palindrom-Prüfer 5 16004 palindrome-checker

--description--

Gibt true zurück, wenn der angegebene String ein Palindrom ist. Gib ansonsten false zurück.

Ein Palindrom ist ein Wort oder ein Satz, der sowohl vorwärts als auch rückwärts gleich geschrieben wird, ohne Rücksicht auf Interpunktion, Groß- und Kleinschreibung.

Hinweis: Du musst alle nicht-alphanumerischen Zeichen (Satzzeichen, Leerzeichen und Symbole) entfernen und alles in die gleiche Schreibweise (Klein- oder Großbuchstaben) umwandeln, um auf Palindrome zu prüfen.

Wir übergeben Strings mit unterschiedlichen Formaten, wie zum Beispiel racecar, RaceCar, und race CAR.

Wir werden auch Strings mit speziellen Symbolen übergeben, wie 2A3*3a2, 2A3 3a2 und 2_A3*3#A2.

--hints--

palindrome("eye") sollte einen booleschen Wert zurückgeben.

assert(typeof palindrome('eye') === 'boolean');

palindrome("eye") sollte true zurückgeben.

assert(palindrome('eye') === true);

palindrome("_eye") sollte true zurückgeben.

assert(palindrome('_eye') === true);

palindrome("race car") solltetrue zurückgeben.

assert(palindrome('race car') === true);

palindrome("not a palindrome") sollte false zurückgeben.

assert(palindrome('not a palindrome') === false);

palindrome("A man, a plan, a canal. Panama") solltetrue zurückgeben.

assert(palindrome('A man, a plan, a canal. Panama') === true);

palindrome("never odd or even") solltetrue zurückgeben.

assert(palindrome('never odd or even') === true);

palindrome("nope") solltefalse zurückgeben.

assert(palindrome('nope') === false);

palindrome("almostomla") solltefalse zurückgeben.

assert(palindrome('almostomla') === false);

palindrome("My age is 0, 0 si ega ym.") solltetrue zurückgeben.

assert(palindrome('My age is 0, 0 si ega ym.') === true);

palindrome("1 eye for of 1 eye.") sollte false zurückgeben.

assert(palindrome('1 eye for of 1 eye.') === false);

palindrome("0_0 (: /-\ :) 0-0") solltetrue zurückgeben.

assert(palindrome('0_0 (: /- :) 0-0') === true);

palindrome("five|\_/|four") solltefalse zurückgeben.

assert(palindrome('five|_/|four') === false);

--seed--

--seed-contents--

function palindrome(str) {
  return true;
}

palindrome("eye");

--solutions--

function palindrome(str) {
  var string = str.toLowerCase().split(/[^A-Za-z0-9]/gi).join('');
  var aux = string.split('');
  if (aux.join('') === aux.reverse().join('')){
    return true;
  }

  return false;
}