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.其實,正則表示式還有其他的表達格式,還有元字元,比較複雜,再次就不在贅述了。