. 匹配除換行符以外的任意一個字符
^ 匹配字符串的開始位置
$ 匹配字符串的結(jié)束位置
w 匹配字母和數(shù)字以及下劃線其中的一個字符,相當于[_a-zA-Z0-9]
W 匹配不是字母、數(shù)字、下劃線的字符,即w的補集
d 匹配任意一個數(shù)字,相當于[0-9]
D 匹配任意非數(shù)字的字符,d的補集
b 匹配單詞的開頭或結(jié)尾位置,用于精確匹配
eveningb Good evening leveningll 僅匹配是evening的完整單詞
B 匹配不是單詞開頭或結(jié)束的位置
BveniB Good evening veni 僅匹配單詞內(nèi)部含veni的字符串
s 匹配空格符號
S 匹配非空格符號
常用量詞主要是對前面的字符的匹配次數(shù)
* 代表連續(xù)匹配前邊的內(nèi)容任意次(換行符除外)
+ 和*類似,不同的是*可以匹配0次,而+則是匹配至少1次
? 匹配0次或1次
{n} 匹配前面的字符n次
{n,} 匹配前面的字符至少n次
{n,m} 匹配前面的字符n次到m次
[xyz] 匹配x或y或z
[a-zA-Z0-9] 匹配a-z或A-Z或0-9中任意一個字符
[^a-z] 匹配非a-z的任意字符,達到了取反的效果
() 以組的形式將多個字符作為一個整體。
如(abc){2,} 表示至少是abcabc。在一個表達式中使用多個()定義組,則使用1,2的形式來調(diào)用的定義的組。
vi/vim,grep,sed等工具遵循的是POSIX的基本語法規(guī)范,awk和egrep遵循的是POSIX擴展語法規(guī)范。因此,這是有的對{}進行轉(zhuǎn)義,有的不需要轉(zhuǎn)義的原因。
PCRE中常用來表示“單詞的起始或結(jié)束位置”,但Linux/Unix的工具中,通常用<來匹配“單詞的起始位置”,用>來匹配“單詞的結(jié)束位置”,sed中的y可以同時匹配這兩個位置。
不同規(guī)范中分枝匹配也有一定差別,有的用...|...,而有的用(...|...)。
使用()可以定義作用范圍,當在一個規(guī)則中使用多個括號時,可以使用1 2來調(diào)用前面括號的內(nèi)容。
((ht|f)tps?) 匹配http,https,ftp三種格式
(www.)? ?代表可以匹配0次或者1次www.
w.* 表示可以輸入任意內(nèi)容(換行符除外)
(.(com|cn|io|html|htm|))$ 可以匹配com、cn、io、html等結(jié)尾的網(wǎng)址
因此以下形式的網(wǎng)址均可以被匹配:
▼▼▼
if ($http_user_agent ~* (mobile|nokia|iphone|ipad|android|samsung|htc|blackberry)) {
return 403;
}
----------------------------------------------、
▼▼▼
server{
listen 80;
server_name ~ ^(www.)?(.+)$;
index index.php index.html;
root /data/wwwsite/$2;
}
#此處需要說明的一點是在nginx中$2是對前面括號內(nèi)容的的引用,引用的是(.+),使用該正則可以用一個規(guī)則表達式區(qū)分不同域名對應的家目錄。
更多精彩干貨分享
點擊下方名片關(guān)注
IT那活兒
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/129916.html
摘要:特意對前端學習資源做一個匯總,方便自己學習查閱參考,和好友們共同進步。 特意對前端學習資源做一個匯總,方便自己學習查閱參考,和好友們共同進步。 本以為自己收藏的站點多,可以很快搞定,沒想到一入?yún)R總深似海。還有很多不足&遺漏的地方,歡迎補充。有錯誤的地方,還請斧正... 托管: welcome to git,歡迎交流,感謝star 有好友反應和斧正,會及時更新,平時業(yè)務工作時也會不定期更...
摘要:責編現(xiàn)代化的方式開發(fā)一個圖片上傳工具前端掘金對于圖片上傳,大家一定不陌生。之深入事件機制前端掘金事件綁定的方式原生的事件綁定方式有幾種想必有很多朋友說種目前,在本人目前的研究中,只有兩種半兩種半還有半種的且聽我道來。 Ajax 與數(shù)據(jù)傳輸 - 前端 - 掘金背景 在沒有ajax之前,前端與后臺傳數(shù)據(jù)都是靠表單傳輸,使用表單的方法傳輸數(shù)據(jù)有一個比較大的問題就是每次提交數(shù)據(jù)都會刷新頁面,用...
摘要:正則起源最近看完了精通正則表達式,收獲頗豐,略過了一些晦澀難懂的理論部分,主要看了實戰(zhàn)和教程部分。然后下面說一下以上兩個基礎(chǔ)教程里沒說到的知識點。最后以上是我在精通正則表達式一書中得到的一些收獲,希望能分享給大家,如有錯誤歡迎指正。 正則起源 最近看完了 《精通正則表達式》,收獲頗豐,略過了一些晦澀難懂的理論部分,主要看了實戰(zhàn)和教程部分。 下面引用一下百度百科里的內(nèi)容。 正則表達式的鼻...
閱讀 1459·2023-01-11 13:20
閱讀 1815·2023-01-11 13:20
閱讀 1267·2023-01-11 13:20
閱讀 2007·2023-01-11 13:20
閱讀 4227·2023-01-11 13:20
閱讀 2885·2023-01-11 13:20
閱讀 1489·2023-01-11 13:20
閱讀 3814·2023-01-11 13:20