Eine Instanz eines regulären Ausdrucks kann auf zwei verschiedene Weisen erstellt werden. Entweder wird ein Schrägstrich (
/
) als Trennzeichen in einem regulären Ausdruck verwendet, oder der
new
-Konstruktor. Die folgenden regulären Ausdrücke sind beispielsweise gleichwertig:
var pattern1:RegExp = /bob/i;
var pattern2:RegExp = new RegExp("bob", "i");
Schrägstriche werden auf die gleiche Weise als Trennzeichen in regulären Ausdrucksliteralen verwendet wie Anführungszeichen als Trennzeichen in Stringliteralen. Mit dem Teil eines regulären Ausdrucks innerhalb der Schrägstriche wird das
Muster definiert.
Ein regulärer Ausdruck kann zudem nach dem letzten trennenden Schrägstrich
Flags
enthalten. Diese Flags sind Bestandteil des regulären Ausdrucks, jedoch vom entsprechenden Muster getrennt.
Bei Verwendung des
new
-Konstruktors wird ein regulärer Ausdruck mithilfe von zwei Strings definiert. Mit dem ersten String wird das Muster festgelegt. Mit dem zweiten String werden die Flags definiert, wie im folgenden Beispiel dargestellt:
var pattern2:RegExp = new RegExp("bob", "i");
Wenn Sie einen Schrägstrich
innerhalb
eines regulären Ausdrucks verwenden möchten, bei dem Schrägstriche als Trennzeichen dienen, müssen Sie dem Schrägstrich einen umgekehrten Schrägstrich (
\
) als Escape-Zeichen voranstellen. Der folgende reguläre Ausdruck entspricht beispielsweise dem Muster
1/2
:
var pattern:RegExp = /1\/2/;
Wenn Sie Anführungszeichen
innerhalb
eines regulären Ausdrucks verwenden möchten, der durch den
new
-Konstruktor definiert wird, müssen Sie vor den Anführungszeichen einen umgekehrten Schrägstrich (
\
) als Escape-Zeichen einfügen (wie beim Definieren von Stringliteralen). Der folgende reguläre Ausdruck entspricht beispielsweise dem Muster
eat at "joe's"
:
var pattern1:RegExp = new RegExp("eat at \"joe's\"", "");
var pattern2:RegExp = new RegExp('eat at "joe\'s"', "");
Fügen Sie in regulären Ausdrücken, bei denen Schrägstriche als Trennzeichen verwendet werden, keine Anführungszeichen mit umgekehrten Schrägstrichen als Escape-Zeichen ein. Verwenden Sie ebenso keine Schrägstriche mit Escape-Zeichen in regulären Ausdrücken, die durch den
new
-Konstruktor definiert werden. Die folgenden Ausdrücke sind gleichwertig und definieren das Muster
1/2 "joe's"
:
var pattern1:RegExp = /1\/2 "joe's"/;
var pattern2:RegExp = new RegExp("1/2 \"joe's\"", "");
var pattern3:RegExp = new RegExp('1/2 "joe\'s"', '');
Geben Sie den umgekehrten Schrägstrich zweimal ein, wenn Sie in einem regulären Ausdruck, der durch den
new
-Konstruktor definiert wird, eine Metasequenz verwenden möchten, die mit einem umgekehrten Schrägstrich (
\
) beginnt, z. B.
\d
(entspricht einer Ziffer):
var pattern:RegExp = new RegExp("\\d+", ""); // matches one or more digits
In diesem Fall müssen Sie den umgekehrten Schrägstrich zweimal eingeben, da der erste Parameter der
RegExp()
-Konstruktormethode ein String ist und in einem Stringliteral ein umgekehrter Schrägstrich zweimal eingegeben werden muss, damit er als einfacher umgekehrter Schrägstrich erkannt wird.
In den folgenden Abschnitten wird die Syntax zum Definieren von regulären Ausdrücken beschrieben.
Weitere Informationen zu Flags finden Sie unter
Flags und Eigenschaften
.