javascript高級程序設計-正則表達式應用

正則表達式的兩種定義方式

1.使用字面量形式定義正則表達式
例如:javascript

var pattern1 = /.at/gi;

若是須要使用元字符則必須轉義,例如:java

var pattern2 = /\[bc\]at/gi;
pattern2.test("[bc]At");  //返回true
pattern2.test("[bc]At");  //返回false
pattern2.test("[bc]At");  //返回true

2.使用構造函數的方式定義正則表達式
例如:正則表達式

var pattern3 = new RegExp("[bc]at","gi");

使用元字符則必須轉義,例如:數組

var pattern2 = new RegExp("\\[bc\\]at","gi");

構造函數方式轉換爲字面量形式toString()

var pattern2 = new RegExp("\\[bc\\]at","gi");
pattern2.toString();  //返回"/\[bc\]at/gi"

exec()用法

返回的結果爲匹配正則表達式的數組,返回第一個匹配信息的數組,沒有匹配則返回null,在設置了全局匹配的模式下,每次調用都會查找新的匹配項。函數

var pattern3 = new RegExp("[bc]at","gi");
var result = pattern3.exec("cat,bat");
alert(result);  //返回"cat"
var result = pattern3.exec("cat,bat");
alert(result);  //返回"bat"
var result = pattern3.exec("cat,bat");
alert(result);  //返回"null"
var result = pattern3.exec("cat,bat");
alert(result);  //返回"cat"

test()用法

模式與參數匹配的狀況下返回true,不然返回false。code

var pattern1 = /.at/gi;
var result = pattern1.test("cat,bat");
alert(result); //返回true
var result = pattern1.test("cat,bat");
alert(result); //返回true
var result = pattern1.test("cat,bat");
alert(result); //返回false
var result = pattern1.test("cat,bat");
alert(result); //true
相關文章
相關標籤/搜索