js正規表示式使用總結

2021-07-25 03:45:53 字數 1911 閱讀 1122

先發乙個比較666的正規表示式:

array.reverse().join(",").match(/([^,](?!.*\1)/ig).reverse();
這個是陣列去重的正規表示式,面試的時候用這個絕對一級棒!~

1.在表示式中有特殊意義,需要新增 「\」 才能匹配該字元本身的字元彙總

^: 匹配的是字元的開頭,在多行檢索中,匹配的是一行的開頭 。要匹配 「^」 字元本身,請使用 「\^」

注:如果^是在中括號中,代表匹配非中括號中的所有內容,例如[^\d]匹配的是所有非數字的字元。

$: 匹配的是字元的結尾,在多行檢索中,匹配的是一行的結尾 。要匹配 「$」 字元本身,請使用 「\$」

( ): 分組.將幾個專案分為乙個單元.這個單元可由 *、+、?和|等符號使用,而且還可以記住和這個組匹配的字元以供此後引。要匹配小括號,請使用 「\(」 和 「\)」

[ ]: 用來自定義能夠匹配 『多種字元』 的表示式。要匹配中括號,請使用 「\[」 和」\ ]」

:修飾匹配次數的符號。要匹配大括號,請使用 「\」

.:匹配除了換行符(/n)以外的任意乙個字元。要匹配小數點本身,請使用 「\.」

?:修飾匹配次數為 0 次或 1 次。要匹配 「?」 字元本身,請使用 「\?」

+: 修飾匹配次數為至少 1 次。要匹配 「+」 字元本身,請使用 「\+」

*: 修飾匹配次數為 0 次或任意次。要匹配 「*」 字元本身,請使用 「\*」

|: 左右兩邊表示式之間 「或」 關係。匹配 「|」 本身,請使用 「\|」

2.轉義字元

\f: 換頁符

\n: 換行符

\r: 回車

\t: 製表符

\v: 垂直製表符

\b: 匹配的是乙個詞語的邊界.簡而言之就是位於字元\w 和 \w之間的位置(注意:[\b]匹配的是退格符)

\b: 匹配的是非詞語的邊界的字元

\ /: 乙個 「/」 直接量

\ \: 乙個」\」直接量

3.能夠與』多種字元』匹配的表示式

正規表示式中的一些表示方法,可以匹配 『多種字元』 其中的任意乙個字元。比如,表示式 「\d」 可以匹配任意乙個數字。雖然可以匹配其中任意字元,但是只能是乙個,不是多個。這就好比玩撲克牌時候,大小王可以代替任意一張牌,但是只能代替一張牌。

[…]: 位於括號之內的任意字元

例如[abc]匹配的是a或b或c,[a-z]匹配的是a到z之間的任意乙個字元。

[^…]: 不在括號之中的任意字元

這個也好理解,比如[abc]就是匹配除了a或b或c之外的任意字元。

.: 除了換行符之外的任意字元,等價於[^\n]

\w: 任何單字字元, 等價於[a-za-z0-9]

\w: 任何非單字字元,等價於[^a-za-z0-9]

\s: 任何空白符,等價於[\ t \ n \ r \ f \ v]

\s: 任何非空白符,等價於[^\ t \ n \ r \ f \ v]

\d: 任何數字,等價於[0-9]

\d: 除了數字之外的任何字元,等價於[^0-9]

4.修飾匹配次數的特殊符號

: 匹配前一項n次,比如:」\w」相當於」\w\w」;」a」 相當於」aaaaa」

: 匹配前一項至少m次,至多n次,比如:」ba」可以匹配」ba」或」baa」或」baaa」

: 匹配前一項至少m次,比如:」\w\d」可以匹配」a12」,」_456」,」m12344」…

?: 匹配前一項0次或1次,也就是說前一項是可選的. 等價於

+: 匹配前一項1次或多次,等價於

*: 匹配前一項0次或多次.等價於

js正規表示式總結

1,斜槓用於轉義,在js正則裡,只有一些元字元 等 和 本身需要轉義,其他的不需要轉義,如果其他的字元前面使用了 可能會產生負面影響,比如 b,t這些有特殊含義的轉義。此外,在js正則中,還有乙個用處在於使用new regexp 形式建立正則物件時,比如new regexp a a 其中 是乘以的意...

js正規表示式總結

常用字元代表含義 匹配除換行符以外的任意字元 匹配 字串的開頭,a 匹配 an a 而不匹配 an a 匹配 字串的結尾,a 匹配 an a 而不匹配 an a 匹配前面元字元0次或多次,ba 將匹配b,ba,baa,baaa 匹配前面元字元1次或多次,ba 將匹配ba,baa,baaa 匹配前面元...

js 正規表示式總結

正則也用了很多了,而真正自己寫的正則到真是寥寥無幾呀,不是貼上複製,就是貼上複製修改,有時候對於一些正則還不是很理解匹配的過程,覺得這作為程式設計師最基本的知識還是應該自己寫一下正則比較好,所以重新又看了一下正則,做一下記錄,以備以後自己複習和使用 正則主要是用於操作字串 驗證字串是不是合法 查詢符...