首頁  >  文章  >  web前端  >  關於JS中match() 和 exec() 傳回值和屬性的測試_javascript技巧

關於JS中match() 和 exec() 傳回值和屬性的測試_javascript技巧

WBOY
WBOY原創
2016-05-16 15:09:541453瀏覽

文法:

exec() :
RegExpObject.exec(string) 
match() :
stringObject.match(string)
stringObject.match(regexp) 

知識點:

exec() 是RegExp物件的方法,而 match() 是String物件的方法。
都會傳回包含第一個符合項目資訊的陣列;或在沒有符合項的情況下傳回null。
傳回的陣列雖然是Array 的實例,但包含兩個額外的屬性:index 和 input。其中,index 表示符合項目在字串中的位置,而 input 表示套用正規表示式的字串。
在陣列中,第一項是與整個模式相符的字串,其他項目是與模式中的捕獲組匹配的字串(如果模式中沒有捕獲組,則該數組只包含一項)。

檢定:

對 match() 的測試程式碼:

var text = "mom and dad and baby";
var pattern = /(mom and )?(dad and )?baby/;
var matches = text.match(pattern);//pattern.exec(text);
console.log(matches.index);
console.log(matches.input);
console.log(matches[0]);
console.log(matches[1]);
console.log(matches[2]);

對 match() 的測試結果截圖:


對 exec() 的測試程式碼:

var text = "mom and dad and baby";
var pattern = /(mom and )?(dad and )?baby/;
var matches = pattern.exec(text);//text.match(pattern);
console.log(matches.index);
console.log(matches.input);
console.log(matches[0]);
console.log(matches[1]);
console.log(matches[2]);

對 exec() 的測試結果截圖:


String 物件方法

方法 描述
exec 检索字符串中指定的值。返回找到的值,并确定其位置
test 检索字符串中指定的值。返回 true 或 false。

String 物件方法

方法 描述
match() 找到一个或多个正则表达式的匹配。
replace() 替换与正则表达式匹配的子串。
search() 检索与正则表达式相匹配的值。

關於JS中match() 和 exec() 回傳值和屬性的測試就給大家介紹到這裡,希望對大家有幫助!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn