RegExp 對象的三個方法:compile()、exec()、test()

這三個都是RegExp對象下的三個方法,使用方法是一致得。javascript

使用方法:RegExpObject.方法()java

方法解析:其實就是根據定義好的正則對象,調用對應的方法。正則表達式

 

     1.RegExpObject.compile(RegExp,modifier)數組

     modifier 規定匹配的類型。"g" 用於全局匹配,"i" 用於區分大小寫,"gi" 用於全局區分大小寫的匹配。spa

     compile用於改變和從新編譯正則表達式。   對象

var str="Every man in the world! Every woman on earth!";

patt=/man/g;
str2=str.replace(patt,"person");
document.write(str2+"<br />");

patt=/(wo)?man/g;
patt.compile(patt);
str2=str.replace(patt,"person");
document.write(str2); 

輸出:blog

Every person in the world! Every woperson on earth!
Every person in the world! Every person on earth!

對patt正則進行從新編譯賦給pattip

先是用person替換了man,而後從新定義patt正則,加了wo ,以後再次替換,這樣man和woman都被替換掉了,其實能夠直接寫/(wo)?man/g這個正則,就能所有替換了。字符串

 

    2.RegExpObject.exec(string)string

    這個方法用於檢索字符串中的正則表達式的匹配。匹配成功有值的話返回一個數組,裏頭存放匹配的結果,若是沒找到匹配項則返回null.

var str = "Visit W3School"; 
var patt = new RegExp("W3School","g");
console.log(patt.exec(str))

  輸出:["W3School"]

在str字符串中查找patt正則定義字符串,找到返回字符串數組

 

    3.RegExpObject.test(string)

    test方法跟exec的區別就是返回值不一樣,exec找到返回值數組,test找到返回true,沒找到返回false

var str = "Visit W3School";
var patt1 = new RegExp("W3School");
console.log(patt1.test(str))

  輸出:true

相關文章
相關標籤/搜索