正規表示式

2021-10-06 16:09:24 字數 2575 閱讀 2924

正規表示式用於定義一些字串的規則,

計算機可以根據正規表示式,來檢查乙個字串是否符合規則,

獲取將字串中符合規則的內容提取出來

語法:

var 變數 =

newregexp

("正規表示式"

,"匹配模式"

);

使用typeof檢查正則物件,會返回object

var reg = new regexp("a");這個正規表示式可以來檢查乙個字串中是否含有a

在建構函式中可以傳遞乙個匹配模式作為第二個引數,

可以是i 忽略大小寫

g 全域性匹配模式

使用字面量來

建立正規表示式

語法:var 變數 = /正規表示式/匹配模式

使用字面量的方式建立更加簡單

使用建構函式建立更加靈活

裡的內容也是或的關係

[ab] == a|b

[a-z] 任意小寫字母

[a-z] 任意大寫字母

[a-z] 任意字母

[0-9] 任意數字

[^ ] 除了

正規表示式的方法:

test()

- 使用這個方法可以用來檢查乙個字串是否符合正規表示式的規則,

如果符合則返回true,否則返回false

split()

- 可以將乙個字串拆分為乙個陣列

- 方法中可以傳遞乙個正規表示式作為引數,這樣方法將會根據正規表示式去拆分字串

- 這個方法即使不指定全域性匹配,也會全都插分

根據任意字母來將字串拆分

var result = str.

split

(/[a-z]/

);

search()

- 可以搜尋字串中是否含有指定內容

- 如果搜尋到指定內容,則會返回第一次出現的索引,如果沒有搜尋到返回-1

- 它可以接受乙個正規表示式作為引數,然後會根據正規表示式去檢索字串

- serach()只會查詢第乙個,即使設定全域性匹配也沒用

str =

"hello abc hello aec afc";/*

* 搜尋字串中是否含有abc 或 aec 或 afc

*/result = str.

search

(/a[bef]c/

);

match()

- 可以根據正規表示式,從乙個字串中將符合條件的內容提取出來

- 預設情況下我們的match只會找到第乙個符合要求的內容,找到以後就停止檢索

我們可以設定正規表示式為全域性匹配模式,這樣就會匹配到所有的內容

可以為乙個正規表示式設定多個匹配模式,且順序無所謂

- match()會將匹配到的內容封裝到乙個陣列中返回,即使只查詢到乙個結果、

str =

"1a2a3a4a5e6f7a8b9c"

; result = str.

match

(/[a-z]/ig

);

replace()

- 可以將字串中指定內容替換為新的內容

- 引數:

1.被替換的內容,可以接受乙個正規表示式作為引數

2.新的內容

- 預設只會替換第乙個

result = str.

replace

(/[a-z]/gi

,"@_@");

result = str.

replace

(/[a-z]/gi,""

);

量詞

- 通過量詞可以設定乙個內容出現的次數

- 量詞只對它前邊的乙個內容起作用

- 正好出現n次

- 出現m-n次

- m次以上

- + 至少乙個,相當於

- 0個或多個,相當於

- ? 0個或1個,相當於

檢查乙個字串中是否以a開頭

^ 表示開頭

$ 表示結尾

如果在正規表示式中同時使用^ $則要求字串必須完全符合正規表示式

檢查乙個字串中是否含有 .

. 表示任意字元

在正規表示式中使用\作為轉義字元

\. 來表示.

\\ 表示\

注意:使用建構函式時,由於它的引數是乙個字串,而\是字串中轉義字元,

如果要使用\則需要使用\\來代替

\w

- 任意字母、數字、_ [a-z0-9_]

\w- 除了字母、數字、_ [^a-z0-9_]

\d- 任意的數字 [0-9]

\d- 除了數字 [^0-9]

\s- 空格

\s- 除了空格

\b- 單詞邊界

\b- 除了單詞邊界

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

非負整數 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正規表示式 編寫正規表示式

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