正規表示式

2021-09-10 07:53:11 字數 2321 閱讀 6752

非列印字元

意義\s

匹配空字元

\s匹配非空字元

特殊字元意義^

代表正規表示式的開始位置 如果匹配自身:\ ^

$正規表示式的結尾 如果要匹配自身:\ $

( )在正規表示式裡面 代表子表示式的開始和結尾

*匹配子表示式零次或多次 如果匹配自身:\ *

+匹配子表示式一次或多次 如果匹配自身:\ +

?匹配前面的子表示式零次或一次 如果匹配自身:\ ?

.匹配除\ n 之外的單字元 例如b.g 如果匹配自身:\ .

[ ]匹配正則裡面的開始和結尾 一般給裡面數值或字元 放匹配的值 如果匹配自身:\ [

限定前面的表示式的次數 引數:n n, n,m

l單或 兩者隨意

1.驗證**號碼

/* 11位  1  3 4 5 7 8   9 */

var s=

/^[1][3,4,5,7,8][0-0]$/

;var tel=

"13789648943"

;

驗證方法:match 驗證、reg驗證

/*match 方法驗證 :如果正確返回當前的值  如果錯誤返回null*/

alert

(tel.

match

(s))

;/*regexp 物件驗證 :正確返回true 錯誤返回false*/

var reg=

newregexp

(s);

alert

(reg.

test

(tel)

);

郵箱正則
/*sina  qq   163 */

var e=

/^[0-9a-za-z_]@((qq)|(sina)|(163))\.(con)$/

;var email=

"[email protected]"

;alert

(email.

match

(e))

;var r=

newregexp

(e);

alert

(r.test

(email)

);

匹配空 替換空
var s=

"a b c"

;/* 判斷有沒有空值: /\s/g g:全域性 在正則中表示匹配多次 */

console.

log(s.

replace

(/\s/g,""

));var value="";

console.

log(value.

match

(/\s/g))

;

判斷乙個字串是否是數字
var s=

"1234"

;var a=

/^\d*$/

;/* \d:純數字 */

console.

log(s.

match

(a))

;

身份證正則:****** yyyy mm dd 375 0
/* ******:[1-9]\d

yy:(18|19|([23]\d))

yy:\d 1800-2023年

mm:((0[1-9])|(10|11|12))

dd:(([0-2][1-9])|10|20|30|31)

\d[0-9xx] */

var s=

/^[1-9]\d(18|19|([23]\d))\d((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d[0-9xx] $/

;var a=

"61013119990606234x"

;alert

(a.match

(s))

;

正則練習:

var a=

"bacmd"

var m=

/[a-z]+/

;alert

(a.match

(m))

;

var a=

/[23]/

;var m=

"3";

console.

log(m.

match

(a))

;

網上也有正則生成器

正規表示式 正規表示式 總結

非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...

正規表示式 表示式

網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...

Linux正規表示式 編寫正規表示式

為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...