lastIndex Property (Windows Scripting - JScript)
Returns the character position where the next match begins in a searched string.
Syntax
RegExp.lastIndex
Remarks
The object associated with this property is always the global RegExp object.
The lastIndex property is zero-based, that is, the index of the first character is zero. Its initial value is –1. Its value is modified whenever a successful match is made.
The lastIndex property is modified by the exec and test methods of the RegExp object, and the match, replace, and split methods of the String object.
The following rules apply to values of lastIndex:
If there is no match, lastIndex is set to -1.
If lastIndex is greater than the length of the string, test and exec fail and lastIndex is set to -1.
If lastIndex is equal to the length of the string, the regular expression matches if the pattern matches the empty string. Otherwise, the match fails and lastIndex is reset to -1.
Otherwise, lastIndex is set to the next position following the most recent match.
The following example illustrates the use of the lastIndex property. This function iterates a search string and prints out the index and lastIndex values for each word in the string.
function RegExpTest()
{
var ver = Number(ScriptEngineMajorVersion() + "." + ScriptEngineMinorVersion())
if (ver < 5.5)
{
document.write("You need a newer version of JScript for this to work");
return;
}
var src = "The quick brown fox jumps over the lazy dog.";
// Create regular expression pattern with a global flag.
var re = /\w+/g;
// Get the next word, starting at the position of lastindex.
var arr;
while ((arr = re.exec(src)) != null)
{
// New line:
document.write ("<br />");
document.write (arr.index + "-" + arr.lastIndex + " ");
document.write (arr);
}
}
Requirements
Applies To: RegExp Object (Windows Scripting - JScript)
Change History
Date |
History |
Reason |
---|---|---|
March 2009 |
Reorganized example code and changed literal. |
Information enhancement. |