正規表示式總結

2021-08-09 02:07:33 字數 1844 閱讀 9048

/pattern/flags 字面量

new regexp(pattern [, flags]) 建構函式

regexp(pattern [, flags]) 工廠符號

g 全域性匹配

i 忽略大小寫

m 匹配多行 將開始和結束符 (^ $) 視為在多行上工作,分別匹配每一行的開始和結束

u unicode

y 粘性匹配,僅匹配目標字串中此正規表示式的lastindex屬性指示的索引(並且不嘗試從任何後續的索引匹配)

. 單個字元 行結束符除外 \n \r \u2028 \u2029

\d 任意數字 [0-9]

\d 非阿拉伯數字 [^0-9]

\w 字母數字下劃線 [a-za-z0-9_]

\w 非字母數字下劃線 [^a-za-z0-9_]

\s 乙個空白符 包括空格、製表符、換頁符

\s 非空白符

\t 水平製表符 tab

\r 回車符 carriage return

\n 換行符 linefeed

\v 垂直製表符 vertical tab

\f 換頁符 form-feed

[\b] 退格符 backspace

\0 匹配乙個nul字元

\cx x是 a-z 的乙個字母,匹配字串中的乙個控制字元 /\cm/ 匹配control-m

\xhh 匹配編碼為 hh (兩個十六禁止數字) 的字元

\uhhhh 匹配unicode 值為 hhhh (四個十六進製制數字) 的字元

\ 使普通字元具有特殊作用 使特殊字元不具有特殊作用

[xyz] 乙個字元集合,也叫字元組。匹配集合中的任意乙個字元 可以用連字元」-「制定乙個範圍 [a-d]

[^xyz] 乙個反義或補充字符集

^ 輸入開始

$ 輸入結尾

\b 匹配零寬單詞邊界 乙個字母和乙個空格之間

\b 匹配零寬非單詞邊界 兩個字母自建或者兩個空格之間

(x) 匹配x並且捕獲匹配項

\n n是乙個正整數 乙個反向引用 (back reference)

(?:x) 匹配 x 不會捕獲匹配項

x* 匹配前面的模式x 0或多次

x+ 匹配前面的模式x i51或多次

x? 匹配前面的模式x 0或1次; 如果在數量詞 * + ? {} 任意乙個後面緊跟?,會使數量詞變為非貪婪即匹配數量最小化,泛指,預設情況下是貪婪的

x|y 匹配 x 或 y

x 前面的模式x 連續出現n 次時匹配

x 前面的模式x 至少連續出現n 次時匹配

x 前面的模式x 至少連續出現n次 至多出現m 次時匹配

x(?=y)只有當x 後面緊跟著 y 時才匹配 x (匹配結果不包括y)

x(?!y)只有當x 後面不是緊跟著 y 時才匹配 x

regexp.global 是否開啟全域性匹配

regexp.ignorecase 是否忽略大小寫

regexp.lastindex 下次匹配開始的字串索引位置

regexp.multiline 是否開啟多行匹配,影響^ $ 的行為

regexp.source 正則物件的原模式文字

regexp.sticky 時候開啟粘滯匹配

search

search 不執行全域性匹配,忽略g 和 lastindex 屬性 從字串的開始檢索 返回第乙個匹配的位置,沒有找到匹配的字串返回-1

search 對大小寫敏感 加上 i 後可忽略大小寫

match

可以進行全域性匹配 找不到返回null

replace

split

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

非負整數 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...

正規表示式總結

正規表示式用於操作字串的規則,這些規則由一些符號所組成。使用正規表示式可以進行更複雜的操作,而且這種複雜的操作要比方法短的多。功能 1,匹配。使用的是string類中的matches方法。2,切割。使用的string類split方法。3,替換。4,查詢。1,將正則規則通過pattern類中的stat...

正規表示式總結

常用正規表示式總結 w w w 驗證 號碼 d d d 正確格式為 x x xx x xx x 和 xx 驗證身份證號 15位或18位數字 d d 驗證一年的12個月 0?1 9 1 0 2 正確格式為 01 09 和 1 12 驗證乙個月的31天 0?1 9 1 2 0 9 30 31 正確格式為...