Js正則整理

2021-09-23 10:14:40 字數 3973 閱讀 7044

字元 含意

^ 匹配乙個輸入或一行的開頭,/^a/匹配"an a",而不匹配"an a"

$匹配乙個輸入或一行的結尾,/a$/匹配"an a",而不匹配"an a"

* 匹配前面元字元0次或多次,/ba */將匹配b,ba,baa,baaa

+匹配前面元字元1次或多次,/ba*/將匹配ba,baa,baaa

?匹配前面元字元0次或1次,/ba*/將匹配b,ba

(x) 匹配x儲存x在名為$1...$9的變數中

x|y匹配x或y

精確匹配n次

匹配n次以上

匹配n-m次

[xyz]字符集(character set),匹配這個集合中的任一乙個字元(或元字元)

[^xyz]不匹配這個集合中的任何乙個字元

[\b]匹配乙個退格符

\b匹配乙個單詞的邊界

\b 匹配乙個單詞的非邊界

\cx這兒,x是乙個控制符,/\cm/匹配ctrl-m

\d匹配乙個字數字元,/\d/ = /[0-9]/

\d匹配乙個非字數字元,/\d/ = /[^0-9]/

\n匹配乙個換行符

\r匹配乙個回車符

\s匹配乙個空白字元,包括\n,\r,\f,\t,\v等

\s 匹配乙個非空白字元,等於/[^\n\f\r\t\v]/

\t匹配乙個製表符

\v匹配乙個重直製表符

\w匹配乙個可以組成單詞的字元(alphanumeric,這是我的意譯,含數字),包括下劃線,如[\w]匹配"$5.98"中的5,等於[a-za-z0-9]

\w匹配乙個不可以組成單詞的字元,如[\w]匹配"$5.98"中的$,等於[^a-za-z0-9]。

字母數字字元 自身
\ f換頁符

\ n 換行符

\ r回車

\ t製表符

\ v垂直製表符

\ /乙個 / 直接量

\ \乙個 \ 直接量

\ .乙個 . 直接量

\ *乙個 * 直接量

\ +乙個 + 直接量

\ ? 乙個 ? 直接量

\ |乙個 | 直接量

\ (乙個 ( 直接量

\ )乙個 ) 直接量

\ [乙個 [ 直接量

\ ] 乙個 ] 直接量

\ 乙個 } 直接量

\ ***由十進位制數 *** 指 定的ascii碼字元

\ xnn 由十六進製制數 nn 指定的ascii碼字元

\ cx控制字元^x. 例如, \ci等價於 \t, \cj等價於 \n

網上蒐羅,可能有誤

//校驗是否全由數字組成 

var patrn=/^[0-9]$/;

//校驗登入名:只能輸入5-20個以字母開頭、可帶數字、「_」、「.」的字串

var patrn=/^[a-za-z]([a-za-z0-9]|[._])$/;

//校驗使用者姓名:只能輸入1-30個以字母開頭的字串

var patrn=/^[a-za-z]$/;

//校驗密碼:只能輸入6-20個字母、數字、下劃線

var patrn=/^(w)$/;

//校驗普通**、傳真號碼:可以「+」開頭,除數字外,可含有「-」

var patrn=/^[+](d)[ ]?([-]?((d)|[ ]))+$/;

//校驗手機號碼:必須以數字開頭,除數字外,可含有「-」

var patrn=/^[+](d)[ ]?([-]?((d)|[ ]))+$/;

var patrn=/^[a-za-z0-9 ]$/;

校驗是否ip位址

((?:(?:25[0-5]|2[0-4]\d|((1\d)|([1-9]?\d)))\.)(?:25[0-5]|2[0-4]\d|((1\d)|([1-9]?\d))))

驗證數字:^[0-9]*$

驗證n位的數字:^\d$

驗證至少n位數字:^\d$

驗證m-n位的數字:^\d$

驗證零和非零開頭的數字:^(0|[1-9][0-9]*)$

驗證有兩位小數的正實數:^[0-9]+(.[0-9])?$

驗證有1-3位小數的正實數:^[0-9]+(.[0-9])?$

驗證非零的正整數:^\+?[1-9][0-9]*$

驗證非零的負整數:^\-[1-9][0-9]*$

驗證非負整數(正整數 + 0) ^\d+$

驗證非正整數(負整數 + 0) ^((-\d+)|(0+))$

驗證長度為3的字元:^.$

驗證由26個英文本母組成的字串:^[a-za-z]+$

驗證由26個大寫英文本母組成的字串:^[a-z]+$

驗證由26個小寫英文本母組成的字串:^[a-z]+$

驗證由數字和26個英文本母組成的字串:^[a-za-z0-9]+$

驗證由數字、26個英文本母或者下劃線組成的字串:^\w+$

驗證使用者密碼:^[a-za-z]\w$ 正確格式為:以字母開頭,長度在6-18之間,只能包含字元、數字和下劃線。

驗證是否含有 ^%&',;=?$" 等字元:[^%&',;=?$\x22]+

驗證漢字:^[\u4e00-\u9fa5],$

驗證interneturl:^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ ;^[a-za-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?s*)?$

驗證**號碼:^(\d3,4|\d-)?\d$:--正確格式為:***x-******x,***x-******xx,***-******x,***-******xx,******x,******xx。

驗證身份證號(15位或18位數字):^\d|\d{}18$

驗證一年的12個月:^(0?[1-9]|1[0-2])$正確格式為:「01」-「09」和「1」「12」

驗證乙個月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$ 正確格式為:01、09和1、31。

整數:^-?\d+$

非負浮點數(正浮點數 + 0):^\d+(\.\d+)?$

正浮點數 ^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$

非正浮點數(負浮點數 + 0)^((-\d+(\.\d+)?)|(0+(\.0+)?))$

負浮點數 ^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$

浮點數 ^(-?\d+)(\.\d+)?$

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

stringobject.replace(regexp/substr, replacement)
引數:

返回值:

說明:

使用方法:

//使用 w3school 替換字串中的 microsoft

str.replace(/microsoft/, "w3school")

//使用 w3school 替換字串中 全部 的 microsoft 就在"/"後加上g

str.replace(/microsoft/g, "w3school")

//$1即([0-9]*)匹配到的內容,將表情**匹配後替換成指定

str = str.replace(/\[em_([0-9]*)\]/g, "

js正則校驗收集整理

一 關於數字類的校驗 1 驗證數字 0 9 2 驗證n位的數字 d 3 驗證至少n位數字 d 4 驗證m n位的數字 d 5 驗證零和非零開頭的數字 0 1 9 0 9 6 驗證有兩位小數的正實數 0 9 0 9 7 驗證有1 3位小數的正實數 0 9 0 9 8 驗證非零的正整數 1 9 0 9 ...

JS正規表示式整理

金額校驗類,包含正負,小數點後兩位 function chearnum s 0 0 9 0 9 0 9 金額 允許正 負數 var exp 1 9 0 9 0 9 0 0 9 0 9 0 9 金額 允許正負數 var exp 1 9 0 9 0 9 0 0 9 0 9 0 9 if exp.test...

js常用正規表示式整理

判斷身份證號是否是15位或者18位 var re d d 0 9 x if re.test idcard.value 判斷郵箱格式是否正確 var re a za z0 9 a za z0 9 a za z0 9 if re.test email.value 判斷空串和空格 var re s if ...