一、正則表達式 1.基本概念(簡略) 三大作用:匹配,提取,替換 正則表達式的組成:普通字元和元字元 元字元 元字元描述 \d 匹配一個數字字元,等價於[0-9] \D 匹配一個非數字字元,等價於[^0-9] \w 匹配一個包括下劃線在內的任意單詞字元,等價於[A-Za-z0-9] \W 匹配任何非 ...
一、正則表達式
1.基本概念(簡略)
- 三大作用:匹配,提取,替換
- 正則表達式的組成:普通字元和元字元
- 元字元
元字元 | 描述 |
---|---|
\d | 匹配一個數字字元,等價於[0-9] |
\D | 匹配一個非數字字元,等價於[^0-9] |
\w | 匹配一個包括下劃線在內的任意單詞字元,等價於[A-Za-z0-9] |
\W | 匹配任何非單詞字元,等價於[^A-Za-z0-9] |
\s | 匹配任何空白字元,包括空格、製表符、換頁符等,等價於[\f\n\r\t\v] |
\S | 匹配任何非空白字元,等價於[^\f\n\r\t\v] |
. | 匹配除了"\n"之外的任何字元,要匹配包括"\n"在內的任何字元,請使用(. |
^ | 匹配輸入字元串的開始位置,如果設置了RegExp對象的Multiline屬性,^也匹配\n或者\r之後的位置。 |
$ | 匹配輸入字元串的結束位置,如果設置了RegExp對象的Multiline屬性,^也匹配\n或者\r之前的位置。 |
- 限定符
限定符 | 描述 |
---|---|
* | 匹配前面的子表達式>=0次 |
+ | 匹配前面的子表達式>=1次 |
? | 匹配前面的子表達式0次或者1次 |
{n} | n是一個非負整數,匹配前面的子表達式n次 |
{n,} | n是一個非負整數,匹配前面的子表達式至少n次 |
{n,m} | n是一個非負整數,匹配前面的子表達式至少n次,最多m次 |
- 其他
其他 | 描述 |
---|---|
[xyz] | 字元集合,匹配包含的任意一個字元。 |
[^xyz] | 負值字元集合,匹配未包含的任意字元。 |
[a-z] | 能匹配的字元範圍 |
[^a-z] | 負值字元範圍,匹配任何不在指定範圍的任意字元。 |
2.兩種正則表達式方法
//第二個參數,i執行對大小寫不敏感,g執行全局匹配(查找所有匹配值而非在找到第一個匹配後停止),m執行多行匹配 var reg = new RegExp('^ab[a-z]','i'); var str = 'ABC'; console.log(reg.test(str));//匹配成功就會返回true //字面量 var reg2 = /ab[a-z]/i;//還有這種正則表達式 var str2 = "ABshdu"; console.log(reg2.test(str2));
運行結果
3.正則表達式相關的方法
(1)RegExp對象
- test() 匹配
- exec() 提取一個內容\
(2)針對String對象
- replace()替換
- split() 切割
- search() 搜索
二、源碼:
- D24_1_RegularExpression.html
- 地址:
https://github.com/ruigege66/JavaScript/blob/master/ D24_1_RegularExpression.html
- 博客園:
https://www.cnblogs.com/ruigege0000/
- CSDN:
https://blog.csdn.net/weixin_44630050?t=1
- 歡迎關註微信公眾號:傅里葉變換,個人賬號,僅用於技術交流,後臺回覆“禮包”獲取Java大數據學習視頻禮包