Der Browser-Speicher localStorage ist nicht verfügbar. Entweder unterstützt dein Browser ihn nicht oder du hast ihn deaktiviert oder er ist voll. Ohne localStorage werden deine Lösungen nicht gespeichert.

Regex: Zeichenauswahl

Die letzte Lektion führte als Metazeichen den Punkt ein. Er steht für ein beliebiges Zeichen. So steht /M.ier/ sowohl für Maier als auch für Meier. Er steht aber auch für Mxier. Möchte man letzteres ausschließen, so muss man die Zeichenauswahl auf a und e begrenzen. Dazu schreibt man die gewünschte Auswahl in eckige Klammern:
let t1 = /M[ae]ier/.test('Maier');
let t2 = /M[ae]ier/.test('Meier');
let t3 = /M[ae]ier/.test('Mxier');
let t4 = /M[ae]ier/.test('Maeier');
Der Ausdruck in eckigen Klammern steht für genau ein Zeichen aus diesem Ausdruck. /[ae]/ steht also für ein Zeichen, das ein a oder ein e ist. /M[ae]ier/ steht dann für Maier oder Meier. Die Variablen t1 sowie t2 sind true und t3 ist false. Da /[ae]/ für genau ein Zeichen steht, ist t4 auch false.

Die Auswahl kann beliebig viele Zeichen enthalten. /[abc]/ steht für a, b oder c und /[123456]/ steht für eine Ziffer von 1 bis 6.

Aufgabe

Schreibe eine Funktion pruefe, die feststellt, ob ein String den Namen Meier in einer der 4 Schreibweisen Maier, Meier, Mayer oder Meyer enthält.

Beispiel: pruefe('Frau Mayer') sollte true und pruefe('Herr Mezer') sollte false ergeben.
function pruefe(s) {
// Verwende die Zeichenauswahl
// zweimal.
}
function pruefe(s) {
  return /M[ae][iy]er/.test(s);
}

loving