Share via


lastIndex-Eigenschaft

Gibt die Zeichenposition zurück, die auf die nächste Übereinstimmung in einer durchsuchten Zeichenfolge folgt.

{RegExp | reArray}.lastIndex

Argumente

  • RegExp
    Erforderlich. Das globale RegExp-Objekt.

  • reArray
    Erforderlich. Ein Array, das von der exec-Methode eines Regular Expression-Objekts zurückgegeben wird.

Hinweise

Die lastIndex-Eigenschaft ist nullbasiert, d. h., der Index des ersten Zeichens ist gleich Null. Der Anfangswert ist -1. Der Wert wird geändert, eine Übereinstimmung gefunden wurde.

Die lastIndex-Eigenschaft des RegExp-Objekts wird von den Methoden exec und test des RegExp-Objekts und den Methoden match, replace und split des String-Objekts geändert.

Für die Werte von lastIndex gelten die folgenden Regeln:

  • Gibt es keine Entsprechung, wird lastIndex auf -1 gesetzt.

  • Ist lastIndex größer als die Länge der Zeichenfolge, schlagen test und exec fehl, und lastIndex wird auf -1 gesetzt.

  • Ist lastIndex gleich der Länge der Zeichenfolge, so gibt es eine Entsprechung für den regulären Ausdruck, wenn das Muster der leeren Zeichenfolge entspricht. Andernfalls schlägt die Entsprechung fehl, und lastIndex wird auf -1 zurückgesetzt.

  • Ansonsten wird für lastIndex die nächste Position festgelegt, die auf die letzte Entsprechung folgt.

Der Anfangswert der RegExp.lastIndex-Eigenschaft ist -1. Der Wert der Eigenschaft ist schreibgeschützt und ändert sich immer dann, wenn eine Übereinstimmung gefunden wurde.

Tipp

Die Eigenschaften des RegExp-Objekts sind nicht verfügbar, wenn ein Programm im schnellen Modus, dem Standardmodus für JScript, ausgeführt wird. Um ein Programm, das diese Eigenschaften verwendet, von der Befehlszeile aus zu kompilieren, müssen Sie den schnellen Modus mit /fast- deaktivieren. Das Deaktivieren des schnellen Modus in ASP.NET ist aufgrund von Threadingproblemen nicht sicher.

Beispiel

Im folgenden Beispiel wird die Verwendung der lastIndex-Eigenschaft veranschaulicht. Diese Funktion durchläuft eine Suchzeichenfolge und gibt die Werte index und lastIndex für jedes Wort in der Zeichenfolge aus.

var src : String = "The quick brown fox jumps over the lazy dog.";
var re : RegExp = /\w+/g;
var arr : Array;
while ((arr = re.exec(src)) != null)
{
    print(arr.index + "-" + arr.lastIndex + "\t" + arr[0]);
}

Ausgabe dieses Programms:

0-3     The
4-9     quick
10-15   brown
16-19   fox
20-25   jumps
26-30   over
31-34   the
35-39   lazy
40-43   dog

Anforderungen

Version 3

Betrifft:

RegExp-Objekt

Siehe auch

Referenz

exec-Methode

Konzepte

Syntax regulärer Ausdrücke