DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> JavaScript基礎知識 >> javascript正則表達式總結
javascript正則表達式總結
編輯:JavaScript基礎知識     

工具

Regexpal是一個在線Javascript正則表達式處理器,地址是:http://www.regexpal.com

學習正則重要的是實踐操作,不妨舉個栗子:

匹配號碼:707-827-7019

字符組匹配

[0-9][0-9][0-9]-[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]
\d匹配任意阿拉伯數字
\D匹配任何非阿拉伯數字

.匹配任意字符

\d\d\d\D\d\d\d\D\d\d\d\d\D
\d\d\d.\d\d\d.\d\d\d\d.

捕獲分組與後向應用

用圓括號()創建分組,用\1來對捕獲分組內容進行向後引用

(\d)\d\1   則匹配707

完整匹配號碼:

^(\(\d{3}\)|^\d{3}[.-]?)?\d{3}[.-]?\d{4}$
^ 表示一行起始位置
( 表示捕獲分組的起始符
\( 表示左括號
\d{3} 表示匹配三位數字
\) 表示右括號
| 表示選擇
[.-]? 匹配一個可選的點號或連字符
) 捕獲分組的結束符
? 表示分組可選
$ 表示行結束為止

邊界

匹配行或字符串起始位置使用脫字符 ^
匹配行或字符串末尾位置使用美元符 $

量詞

量詞默認是貪心的
貪心的量詞會首先匹配整個字符串。嘗試匹配時,他會選定盡可能多的內容,也就是整個輸入。量詞首先匹配整個字符,如果失敗則回退一個字符再次嘗試。這個過程就叫做 回溯。
懶惰的量詞是從目標的起始位置開始尋找匹配。每次檢查字符串的一個字符,尋找他要匹配的內容。最後,他會嘗試匹配整個字符串。
占有量詞會覆蓋整個目標,然後嘗試尋找匹配內容,但是他只嘗試一次,不會回溯。
如使用 .* 匹配任何字符零次或多次

貪心量詞

使用花括號{}可限制某個模式在某個范圍內匹配的次數,另外,未經修飾的量詞就是貪心量詞
7{1,}與7+
7{0,}與7*
7?與7{0,1}
本質上則是一樣
7{m,n} 則會匹配m到n次

懶惰量詞

末尾加上?則使量詞變懶惰
7?? 首先7?匹配零個或一個7,懶惰後不會匹配任何內容
7*? 匹配零個7
7+? 匹配一個7
7{m,n}? 匹配m個7

關於正則匹配html,xml標簽,下次再寫

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved