JavaScript RegExp 對象
RegExp:是正則運算式(regular expression)的簡寫。
完整 RegExp 對象參考手冊
請查看我們的 JavaScript RegExp 對象的參考手冊,其中提供了可以與字串對象一同使用的所有的屬性和方法。
這個手冊包含的關於每個屬性和方法的用法的詳細描述和實例。
什麼是 RegExp?
正則運算式描述了字元的模式對象。
當您檢索某個文本時,可以使用一種模式來描述要檢索的內容。RegExp 就是這種模式。
簡單的模式可以是一個單獨的字元。
更複雜的模式包括了更多的字元,並可用於解析、格式檢查、替換等等。
您可以規定字串中的檢索位置,以及要檢索的字元類型,等等。
語法
var patt=new RegExp(pattern,modifiers);
或更簡單的方法
var patt=/pattern/modifiers;
或更簡單的方法
var patt=/pattern/modifiers;
- 模式描述了一個運算式模型。
- 修飾符(modifiers)描述了檢索是否是全局,區分大小寫等。
注意:當使用構造函數創造正則對象時,需要常規的字元轉義規則(在前面加反斜杠 \)。比如,以下是等價的:
var re = new RegExp("\\w+"); var re = /\w+/;
RegExp 修飾符
修飾符用於執行不區分大小寫和全文的搜索。
i - 修飾符是用來執行不區分大小寫的匹配。
g - 修飾符是用於執行全文的搜索(而不是在找到第一個就停止查找,而是找到所有的匹配)。
實例 1
在字串中不區分大小寫找"zaixian"
var str = "Visit zaixian";
var patt1 = /zaixian/i;
以下標記的文本是獲得的匹配的運算式:
Visit zaixian
實例 2
全文查找 "is"
var str="Is this all there is?";
var patt1=/is/g;
以下標記的文本是獲得的匹配的運算式:
Is this all there is?
實例 3
全文查找和不區分大小寫搜索 "is"
var str="Is this all there is?";
var patt1=/is/gi;
以下 標記的文本是獲得的匹配的運算式:
Is this all there is?
test()
test()方法搜索字串指定的值,根據結果並返回真或假。
下麵的示例是從字串中搜索字元 "e" :
實例
var patt1=new RegExp("e");
document.write(patt1.test("The best things in life are free"));
由於該字串中存在字母 "e",以上代碼的輸出將是:
true
當使用構造函數創造正則對象時,需要常規的字元轉義規則(在前面加反斜杠 \)
實例
var re = new RegExp("\\w+");
exec()
exec() 方法檢索字串中的指定值。返回值是被找到的值。如果沒有發現匹配,則返回 null。
下麵的示例是從字串中搜索字元 "e" :
實例 1
var patt1=new RegExp("e");
document.write(patt1.exec("The best things in life are free"));
由於該字串中存在字母 "e",以上代碼的輸出將是:
e