match 方法
更新:2007 年 11 月
利用規則運算式 (Regular Expression) 模式執行字串搜尋,然後傳回包含搜尋結果的陣列。
function match(rgExp : RegExp) : Array
引數
- rgExp
必要項。包含有規則運算式模式和適用旗標的規則運算式物件的執行個體。也可以是包含規則運算式模式與適用旗標的變數名稱或字串常值。
備註
如果 match 方法找不到符合的項目,會傳回 null。如果找到符合的項目,則 match 方法會傳回一個陣列,然後更新全域 RegExp 物件的屬性來反映符合的結果。
match 方法傳回的陣列有三種屬性:input、index 和 lastIndex。input 屬性包含整個所搜尋的字串。index 屬性包含了在整個所搜尋字串中相符子字串的位置。lastIndex 屬性則包含了最後相符項目中跟著最後一個字元的位置。
如果未設定全域旗標 (g),陣列的元素 0 會包含所有相符項目,而元素 1 - n 則包含了相符項目中的子項目。這種做法相當於不設定全域旗標的 exec 方法。如果設定全域旗標,元素 0 - n 則包含所有的相符項目。
範例
下列範例說明如何使用 match 方法。
function MatchDemo(){
var r, re; //Declare variables.
var s = "The rain in Spain falls mainly in the plain";
re = /ain/i; //Create regular expression pattern.
r = s.match(re); //Attempt match on search string.
return(r); //Return first occurrence of "ain".
}
以下範例說明如何使用設定 g 旗標的 match 方法。
function MatchDemo(){
var r, re; //Declare variables.
var s = "The rain in Spain falls mainly in the plain";
re = /ain/ig; //Create regular expression pattern.
r = s.match(re); //Attempt match on search string.
return(r); //Return array containing all four
// occurrences of "ain".
}
下列程式碼說明如何使用 match 方法來搜尋字串常值。
var r, re = "Spain";
r = "The rain in Spain".replace(re, "Canada");