RegExp 对象 (JavaScript)
$1...$9 属性 (RegExp) (JavaScript)
返回在模式匹配期间找到的,所存储的最近的九个部分。只读。
RegExp.$n
- RegExp
-
始终为全局 RegExp 对象。
- n
-
1 至 9 之间的任意整数。
每当产生一个带括号的成功匹配时,$1...$9 属性的值就被修改。可以在一个正则表达式模式中指定任意多个带括号的子匹配,但只能存储最新的九个。
下面的示例执行正则表达式搜索。它显示了全局 RegExp 对象中的匹配项和子匹配项。子匹配项是 $1…$9 属性中包含的成功的带括号匹配项。该示例还显示了由 exec 方法返回的数组中的匹配项和子匹配项。
var newLine = "<br />"; var re = /(\w+)@(\w+)\.(\w+)/g var src = "Please send mail to george@contoso.com and someone@example.com. Thanks!" var result; var s = ""; // Get the first match. result = re.exec(src); while (result != null) { // Show the entire match. s += newLine; // Show the match and submatches from the RegExp global object. s += "RegExp.lastMatch: " + RegExp.lastMatch + newLine; s += "RegExp.$1: " + RegExp.$1 + newLine; s += "RegExp.$2: " + RegExp.$2 + newLine; s += "RegExp.$3: " + RegExp.$3 + newLine; // Show the match and submatches from the array that is returned // by the exec method. for (var index = 0; index < result.length; index++) { s += index + ": "; s += result[index]; s += newLine; } // Get the next match. result = re.exec(src); } document.write(s); // Output: // RegExp.lastMatch: george@contoso.com // RegExp.$1: george // RegExp.$2: contoso // RegExp.$3: com // 0: george@contoso.com // 1: george // 2: contoso // 3: com // RegExp.lastMatch: someone@example.com // RegExp.$1: someone // RegExp.$2: example // RegExp.$3: com // 0: someone@example.com // 1: someone // 2: example // 3: com
index 属性 (RegExp) (JavaScript)
返回字符位置,它是被搜索字符串中第一个成功匹配的开始位置。只读。
RegExp.index
与此属性关联的对象始终为全局 RegExp 对象。
index 属性是从零开始的。 index 属性的初始值是 –1。每当产生成功匹配时,其值就会相应更改。
下面的示例阐释了 index 属性的用法。该函数重复一个字符串搜索,并打印出字符串中每一个词的 index 和 lastIndex 值。
function RegExpTest() { var ver = Number(ScriptEngineMajorVersion() + "." + ScriptEngineMinorVersion()) if (ver < 5.5) { document.write("You need a newer version of JavaScript 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); } }
input 属性 ($_) (RegExp) (JavaScript)
返回执行正则表达式搜索所针对的字符串。只读。
RegExp.input
与此属性关联的对象始终为全局 RegExp 对象。
只要搜索字符串发生更改,就可以修改 input 属性的值。
下面的示例阐释了 input 属性的用法:
function inputDemo(){ var s; var re = new RegExp("d(b+)(d)","ig"); var str = "cdbBdbsbdbdz"; var arr = re.exec(str); s = "The string used for the match was " + RegExp.input; return(s); }
原创文章请随便转载。愿和大家分享,并且一起进步。-- 江 coder