JS筆記-part2(正則表達式)

個人習慣用思維導圖做筆記,重新敲一遍加深印象

正則表達式

概念:正則表達式是一個用於對字符串實現邏輯匹配運算的對象

創建正則表達式對象

(1)構造函數聲明:
var reg = new RegExp(/abc/,‘i’)
第一個參數爲過濾字符串的規則
第二個參數爲修飾符
(2)字面量簡介方式(常用)
var reg = /abc/i
在//內規定過濾規則,後面是修飾符

匹配方法

test():檢測是否滿足表達式匹配結果,返回布爾值

返回匹配結果詳細信息

exec():返回數組

兩種基本字符

1.原義文本字符

字符本身的含義,例如‘/abc/’表示匹配abc

2.元字符

在正則表達式中有特殊含義的非字母字符,包括:
*+?$^.|(){}[]

| console.log(/a|b/.test(‘ac’));//true;一真全真
[] 簡單字符類 console.log(/[abc]/.test(‘ac’));//true;一真全真
[^] 反向類(負向類) console.log(/[^abc]/.test(‘abcd’));//true;一假則真
- 範圍類 [0-9]表示0到9之間的任意字符,同樣適用於a-z,A-Z

預定義類:

. 除了回車和換行之外的所有字符 等價於[^\r\n]
\d 數字字符 等價於[0-9]
\D 非數字字符 等價於[^0-9]
\s 空白字符 等價於[\f\n\r\t\v]
\S 非空白字 等價於[^\f\n\r\t\v]
\w 單詞字符(字母、下劃線、數字) 等價於[a-zA-Z_0-9]
\W 非單詞字符 等價於[^a-zA-z_0-9]

邊界字符

^ 以指定字符爲開頭 此處的^區分包含在[]中的^,[^]爲反向類
$ 以指定字符爲結尾
\b 單詞邊界
\B 非單詞邊界

量詞

() 分組
{} 匹配的程度 {2,3}表示至少匹配2次,最多匹配3次
? 匹配包含0個或一個指定字符的字符串
* 修飾匹配數量爲任意數量,包括0次
+ 前導字符必須在目標對象中連續出現一次或多次

修飾符

i 大小寫不敏感
g 全局匹配,不侷限於第一次
m 檢測換行符

修飾符可以同時使用多個

驗證漢字

/[\u4e00-\u9fa5]/

不定期更新…

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章