Latest web development tutorials
×

JavaScript 教程

JavaScript 教程 JavaScript 簡介 JavaScript 用法 JavaScript 輸出 JavaScript 語法 JavaScript 語句 JavaScript 註釋 JavaScript 變量 JavaScript 數據類型 JavaScript 對象 JavaScript 函數 JavaScript 作用域 JavaScript 事件 JavaScript 字符串 JavaScript 運算符 JavaScript 比較 JavaScript If...Else JavaScript switch JavaScript for JavaScript while JavaScript Break & Continue JavaScript typeof JavaScript 類型轉換 JavaScript 正則表達式 JavaScript 錯誤 JavaScript 調試 JavaScript 變量提升 JavaScript 嚴格模式 JavaScript 使用誤區 JavaScript 表單驗證 JavaScript 保留關鍵字 JavaScript JSON JavaScript void JavaScript 代碼規範

JS 函數

JavaScript 函數定義 JavaScript 函數參數 JavaScript 函數調用 JavaScript 閉包

JS HTML DOM

DOM 簡介 DOM HTML DOM CSS DOM 事件 DOM EventListener DOM 元素

JS 高級教程

JavaScript 對象 JavaScript Number JavaScript String JavaScript Date JavaScript Array JavaScript Boolean JavaScript Math JavaScript RegExp 對象

JS 瀏覽器 BOM

JavaScript Window JavaScript Window Screen JavaScript Window Location JavaScript Window History JavaScript Navigator JavaScript 彈窗 JavaScript 計時事件 JavaScript Cookies

JS 庫

JavaScript 庫 JavaScript 測試 jQuery JavaScript 測試 Prototype

JS 實例

JavaScript 實例 JavaScript 對象實例 JavaScript 瀏覽器對象實例 JavaScript HTML DOM 實例 JavaScript 總結

JS 參考手冊

JavaScript 對象 HTML DOM 對象

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

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

var str="Visit W3CSchool";
var patt1=/w3cschool/i;

以下標記的文本是獲得的匹配的表達式:

Visit W3CSchool

嘗試一下»

實例2

全文查找"is"

var str="Is this all there is?";
var patt1=/is/g;

以下標記的文本是獲得的匹配的表達式:

Is th is all there is ?

嘗試一下»

實例3

全文查找和不區分大小寫搜索"is"

var str="Is this all there is?";
var patt1=/is/gi;

以下標記的文本是獲得的匹配的表達式:

Is th is 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

嘗試一下»