經常使用正則表達式學習和備份

1.元字符
在正則表達式中,包括2種字符:
(1)普通字符(普通字符就是a~z、0~9這類常見的字符)
(2)特殊字符(元字符)
元字符表正則表達式

元字符 說明
\d 匹配數字,至關於[0-9]
\D 匹配非數字,至關於[^0-9]
\w 匹配一個單字字符,至關於[A-Za-z0-9_]
\W 匹配一個非單字字符,至關於[^A-Za-z0-9_]
\s 匹配一個空白字符,包括空格、製表符、換頁符和換行符
\S 匹配一個非空白字符
\r 匹配一個回車符 (U+000D)
\n 匹配一個換行符 (U+000A)
\f 匹配一個換頁符 (U+000C)
. (小數點)匹配除換行符以外的任何單個字符。
[...] 匹配方括號內的任一字符
[^...] 匹配非方括號中的任一字符

注意:
方括號又叫字符組,注意某些元字符在字符組外和字符組內的意義不一樣。例如:^在字符組外匹配行的開頭,在字符組內表示排除型字符;-在字符組外匹配普通連字符號,在字符組內(不在開頭)表示一個範圍;問號和點號在字符組外一般是元字符,但在字符組內只是匹配普通字符而已
2.鏈接符-bash

鏈接符 說明
[0-9] 匹配數字,等價於\d
[a-z] 匹配英文小寫字母
[A-Z] 匹配英文大寫字母
[a-zA-Z0-9] 匹配數字或者任意字母

3.限定符
限定某個或某類字符出現的次數,如下n,m是一個正整數ide

限定符 說明
+ 重複1次或者更屢次(≥1)
? 重複0次或者1次(≤1)。若是緊跟在任何量詞 *、 +、? 或 {} 的後面,將會使量詞變爲非貪婪的(匹配儘可能少的字符),和缺省使用的貪婪模式(匹配儘量多的字符)正好相反。
* 任意次數
{n} 重複n次
{n,} 最少n次(≥n)
{n,m} 重複n到m次(≥n&&≤m)

4.定位符
限定某些字符出現的位置ui

定位符 說明
^ 限定開始位置的字符
$ 限定結尾位置的字符
\b 匹配一個詞的邊界。可是[\b]很特殊,是匹配一個退格(U+0008)
\B 匹配一個非單詞邊界

5.轉義字符
匹配正則表達式中的特殊字符,咱們就必須在該特殊字符前面加上反斜槓「\」將其進行轉義 例如:
$、(、)、*、+、.、[、]、?、\、/、^、{、}、|
6.分組符
用小括號()括起來的表達式看出一個總體來處理
7.選擇符
選擇符|選擇匹配2個選項之中的任意一個
8.註釋
(?#註釋的內容)
9.正則表達式標誌spa

標誌 說明
g 全局搜索
i 不區分大小寫
m 多行搜索
y 執行「粘性」搜索,匹配從目標字符串的當前位置開始,能夠使用y標誌

例子:code

/Mango/i.test('mango')
返回true
複製代碼

詳細請查看:developer.mozilla.org/zh-CN/docs/…cdn

特殊需求表達式

Email地址:blog

^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
複製代碼

手機號碼:ip

^(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{8}$
複製代碼

身份證號(15位、18位數字):字符串

^\d{15}|\d{18}$
複製代碼

2 到 9 位中文暱稱:

^[\u4e00-\u9fa5]{2,9}$
複製代碼

帳號/密碼(以字母開頭,長度在6~18之間,只能包含字母、數字和下劃線):

^[a-zA-Z]\w{5,17}$
複製代碼

匹配HTML Tag

<("[^"]*"|'[^']*'|[^'">])*>
複製代碼
相關文章
相關標籤/搜索