JavaScript RegExp 物件

RegExp:是正則表示式(regular expression)的簡寫。


完整 RegExp 物件參考手冊

請檢視我們的 JavaScript RegExp 物件的參考手冊,其中提供了可以與字串物件一同使用的所有的屬性和方法。

這個手冊包含的關於每個屬性和方法的用法的詳細描述和例項。


什麼是 RegExp?

正則表示式描述了字元的模式物件。

當您檢索某個文字時,可以使用一種模式來描述要檢索的內容。RegExp 就是這種模式。

簡單的模式可以是一個單獨的字元。

更復雜的模式包括了更多的字元,並可用於解析、格式檢查、替換等等。

您可以規定字串中的檢索位置,以及要檢索的字元型別,等等。

語法

var patt=new RegExp(pattern,modifiers);

或更簡單的方法

var patt=/pattern/modifiers;
  • 模式描述了一個表示式模型。
  • 修飾符(modifiers)描述了檢索是否是全域性,區分大小寫等。

注意:當使用建構函式創造正則物件時,需要常規的字元轉義規則(在前面加反斜槓 \)。比如,以下是等價的:

var re = new RegExp("\\w+");
var re = /\w+/;

RegExp 修飾符

修飾符用於執行不區分大小寫和全文的搜尋。

i - 修飾符是用來執行不區分大小寫的匹配。

g - 修飾符是用於執行全文的搜尋(而不是在找到第一個就停止查詢,而是找到所有的匹配)。

例項 1

在字串中不區分大小寫找"itread01"

var str = "Visit itread01"; var patt1 = /itread01/i;

以下標記的文字是獲得的匹配的表示式:

Visit itread01


例項 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