Blaubart: undefined als Ergebnis in RegExp

Beitrag lesen

Tach.

Was hat "undefined" im Ergebnis zu suchen?

Das ist offenbar so definiert. Ich finde nicht die genaue Stelle, aber in ECMAScript gibt es ein Beispiel für den |-Operator: [...]

Ah, anscheinend wirklich "by design". Vielen Dank für den Link.

Wenn für den optionalen Teilausdruck nur der Quantifier "keinmal" greift, erwarte ich, daß im Ergebnisarray auch bloß ein leerer String dafür auftaucht – nichts Undefiniertes.

Ein leerer String ist ungeeignet, weil damit gesagt wäre, dass das Pattern einen leeren String gefunden hätte, was etwas anderes ist als dass es gar nicht gepasst hat. Ich hätte eher null erwartet, das wäre der sinnigste Wert.

Er *paßt* ja (der Ausdruck verlangt "eins oder keins"), liefert nur eben keine Zeichen. Nun gut, die Macher haben sich bei der Standardisierung halt für eine dritte Variante entschieden ...

--
Once is a mistake, twice is Jazz.