RegExp 物件
更新:2007 年 11 月
用來儲存規則運算式 (Regular Expression) 模式比對結果之相關資訊的內建全域物件。此物件不能明確建構。
屬性
方法
RegExp 物件沒有方法。
需求
備註
RegExp 物件不能直接建立,但是隨時都可以使用。成功地完成規則運算式搜尋之後,RegExp 物件的各種屬性 (Property) 初始值如下:
屬性 |
速記 |
初始值 |
---|---|---|
index |
|
-1 |
input |
$_ |
空字串 |
lastIndex |
|
-1 |
lastMatch |
$& |
空字串 |
lastParen |
$+ |
空字串 |
leftContext |
$` |
空字串 |
rightContext |
$' |
空字串 |
$1 - $9 |
|
空字串 |
請不要混淆全域的 RegExp 物件與規則運算式物件。雖然它們看起來很類似,但是它們很明顯是不同的。全域的 RegExp 物件的屬性包含每次比對發生時持續更新之相關資訊,而規則運算式物件的屬性只包含一個規則運算式執行個體比對時發生的相關資訊。
注意事項: |
---|
當以 JScript 預設的快速模式執行時,無法使用 RegExp 的屬性。若要從命令列編譯使用這些屬性的程式,必須使用 /fast- 關閉快速選項。因為執行緒的問題,在 ASP.NET 中關閉快速選項並不安全。 |
以下範例示範全域的 RegExp 物件的用法。這個範例必須以 /fast- 選項編譯。
範例
var re : RegExp = new RegExp("d(b+)(d)","ig");
var arr : Array = re.exec("cdbBdbsbdbdz");
print("$1 contains: " + RegExp.$1);
print("$2 contains: " + RegExp.$2);
print("$3 contains: " + RegExp.$3);
這個程式碼的輸出為:
$1 contains: bB
$2 contains: d
$3 contains: