1. 程式人生 > 實用技巧 >JavaScript正則表示式

JavaScript正則表示式

本篇教程主要講述了簡單地在JavaScript中使用正則表示式,來快速簡便地處理字串,已達到網頁的要求。

1.正則表示式的格式

/正則表示式主體/修飾符(可選)

舉例

var patt = /runoob/i

(1)其中等號的右邊中runoob就是正則表示式的主體,也就是所要搜尋進行匹配的字串,比較容易理解的說法就是:要以這個runoob為目標去到較長的字串中進行匹配。

(2)其中 i 就是一個修飾符,修飾符的意義就是表名搜尋匹配的要求,比如是否區分大小寫,在此處的意義就是表示不區分大小寫來進行搜尋。

其他的修飾符還有

i                  執行對大小寫不敏感的匹配。
g                  執行全域性匹配(查詢所有匹配而非在找到第一個匹配後停止)。
m                  執行多行匹配。

2.內建方法(函式)

在 JavaScript 中,正則表示式通常用於兩個字串方法 : search() 和 replace()。

search() 方法用於檢索字串中指定的子字串,或檢索與正則表示式相匹配的子字串,並返回子串的起始位置。

var str = "Visit Runoob!"; 

var n = str.search("Runoob");

結果返回6

replace() 方法用於在字串中用一些字元替換另一些字元,或替換一個與正則表示式匹配的子串。

demo值為“hello microsoft ”

var str = document.getElementById("demo").innerHTML; 

var txt = str.replace(/microsoft/i,"Runoob");

此時txt的值就是“helloRunoob”

3.RegExp物件

在JavaScript中可以使用內建的RegExp物件來進行正則表示式的一系列操作。最主要的就是test()函式,和execl()函式。

test() 方法用於檢測一個字串是否匹配某個模式,如果字串中含有匹配的文字,則返回 true,否則返回 false。簡單來說就是作用就是檢測是否含有某一字串。

以下例項用於搜尋字串中的字元 "e":

var patt = /e/;

patt.test("The best things in life are free!");

因為引號中的字串存在e,所以返回值就是true。

exec() 方法是一個正則表示式方法。

exec() 方法用於檢索字串中的正則表示式的匹配。

該函式返回一個數組,其中存放匹配的結果。如果未找到匹配,則返回值為 null。

以下例項用於搜尋字串中的字母 "e":

/e/.exec("The best things in life are free!");

字串中含有 "e",所以該例項輸出為:

e

4.其實,正則表示式還有其他的表達格式,還有元字元,比較複雜,再次就不在贅述了。