-、"^"頭匹配
^front表示以"front"開頭的字串。
二、"$"尾匹配
tail$表示以"tail"結尾的字串。
三、轉義序列
所有轉義序列都用"/"打頭。如"^"、"$"、"+"、"("、")"在表示式中都有特殊意義,所以在正規表示式中也用"/^"、"/$"、"/+"、"/("、"/)"來表示。
四、字元簇
[a-z]匹配小寫字元;[a-z]匹配寫字元;[a-za-z]匹配所有字元;[0-9]匹配所有數字;[/./-/+]匹配所有句號,減號和加號; [^a-z]除了小寫字母以外的成有字元;^[^a-z]第乙個字元不能是小寫字母;[^0-9]除了數字以外的所有字元;
五、重複
^a$表示aaaa;^a表示aa,aaa或aaaa;^a表示多於兩個a的字串;.表示所有的兩個字元;
下面舉兩個常用例子說明:
1、email的驗證
要求:(1)必須包含乙個"@"
(2)在"@"後面的字串至少包含乙個"."號
(3)"@"前面和後面的字串由乙個或乙個以上字母、數字、下劃線或減號構成
根據這幾條規則,可以與出以下正規表示式:
^[a-za-z0-9_/-]@[a-za-z0-9_/-]/.[a-za-z0-9_/-.]$
或者:/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*
2、**號碼的驗證
要求:(1)**號碼由數字、"("、")"和"-"構成
(2)**號碼為3到8位
(3)如果**號碼中包含有區號,那麼區號為三位或四位
(4)區號用"("、")"或"-"和其他部分隔開
(5)移動**號碼為11或12位,如果為12位,那麼第一位為0
(6)11位移動**號碼的第一位和第二位為"13"
(7)12位移動**號碼的第二位和第三位為"13"
根據這幾條規則,可以與出以下正規表示式:
(^[0-9]/-[0-9]$)|(^[0-9]$)|(^/([0-9]/)[0-9]$)|(^013[0-9]$)
------------------------------------
日期20/d(-)((0[1-9])|(1[0-2]))(-)((0[1-9])|([1-2][0-9])|(3[0-1]))(t|/s)(([0-1][0-9])|(2[0-3])):([0-5][0-9]):([0-5][0-9])
格式2004-05-06 14:00:00
([0-9])-([0-9])-([0-9])
--------------------------
數字,字母,下劃線
^[0-9a-za-z_]*$
^[a-za-z0-9]*$
---------------------
只能輸入2~10個漢字
^[/u4e00-/u9fa5]$
————————————————————————
乙個正規表示式就是由普通字元(例如字元 a 到 z)以及特殊字元(稱為元字元)組成的文字模式。該模式描述在查詢文字主體時待匹配的乙個或多個字串。正規表示式作為乙個模板,將某個字元模式與所搜尋的字串進行匹配。
這裡有一些可能會遇到的正規表示式示例:
jscript vbscript 匹配
/^/[ /t]*$/ "^/[ /t]*$" 匹配乙個空白行。
//d-/d/ "/d-/d" 驗證乙個id 號碼是否由乙個2位數字,乙個連字元以及乙個5位數字組成。
/.*/ ".*" 匹配乙個 html 標記。
下表是元字元及其在正規表示式上下文中的行為的乙個完整列表:
字元 描述
/ 將下乙個字元標記為乙個特殊字元、或乙個原義字元、或乙個 後向引用、或乙個八進位制轉義符。例如,'n' 匹配字元 "n"。'/n' 匹配乙個換行符。序列 '//' 匹配 "/" 而 "/(" 則匹配 "("。
^ 匹配輸入字串的開始位置。如果設定了 regexp 物件的 multiline 屬性,^ 也匹配 '/n' 或 '/r' 之後的位置。
$ 匹配輸入字串的結束位置。如果設定了regexp 物件的 multiline 屬性,$ 也匹配 '/n' 或 '/r' 之前的位置。
* 匹配前面的子表示式零次或多次。例如,zo* 能匹配 "z" 以及 "zoo"。 * 等價於。
+ 匹配前面的子表示式一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等價於 。
? 匹配前面的子表示式零次或一次。例如,"do(es)?" 可以匹配 "do" 或 "does" 中的"do" 。? 等價於 。
n 是乙個非負整數。匹配確定的 n 次。例如,'o' 不能匹配 "bob" 中的 'o',但是能匹配 "food" 中的兩個 o。
n 是乙個非負整數。至少匹配n 次。例如,'o' 不能匹配 "bob" 中的 'o',但能匹配 "foooood" 中的所有 o。'o' 等價於 'o+'。'o' 則等價於 'o*'。
trackback:
正規表示式語法解析
正規表示式語法解析 頭匹配 front表示以 front 開頭的字串。二 尾匹配 tail 表示以 tail 結尾的字串。三 轉義序列 所有轉義序列都用 打頭。如 在表示式中都有特殊意義,所以在正規表示式中也用 來表示。四 字元簇 a z 匹配小寫字元 a z 匹配寫字元 a za z 匹配所有字元...
正規表示式 轉
字元 描述 將下乙個字元標記為乙個特殊字元 或乙個原義字元 或乙個向後引用 或乙個八進位制轉義符。例如,n 匹配字元 n n 匹配乙個換行符。序列 匹配 而 則匹配 匹配輸入字串的開始位置。如果設定了regexp物件的multiline屬性,也匹配 n 或 r 之後的位置。匹配輸入字串的結束位置。如...
正規表示式語法
jscript 8.0 正規表示式語法 正規表示式是一種文字模式,包括普通字元 例如,a 到 z 之間的字母 和特殊字元 稱為 元字元 模式描述在搜尋文字時要匹配的乙個或多個字串。表示式 匹配 s 匹配空行。d d 驗證由兩位數字 乙個連字元再加 5 位數字組成的 id 號。s s 匹配 html ...