一、正則表達式:
成都創(chuàng)新互聯(lián)專注于企業(yè)營銷型網(wǎng)站、網(wǎng)站重做改版、城關網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、H5開發(fā)、商城建設、集團公司官網(wǎng)建設、外貿(mào)網(wǎng)站建設、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為城關等各大城市提供網(wǎng)站開發(fā)制作服務。
正則表達式(regular expression, RE)是一種字符模式,用于在查找過程中匹配指定的字符。在大多數(shù)程序里,正則表達式都被置于兩個正斜杠之間;例如/l[oO]ve/就是由正斜杠界定的正則表達式,正則表達式具備很強大的文本匹配功能,能夠在文本海洋中快速高效地處理文本。
它將匹配被查找的行中任何位置出現(xiàn)的相同模式。在正則表達式中,元字符是最重要的概念。
二、元字符:
定義:元字符是這樣一類字符,它們表達的是不同于字面本身的含義
shell 元字符(也稱為通配符) 由 shell 來解析,如 rm -rf *.pdf,元字符* Shell 將其解析為任意多個字符
正則表達式元字符 由各種執(zhí)行模式匹配操作的程序來解析,比如 vi、grep、sed、awk、python
1、正則表達式的分類:
正則表達式的字符串表達方法根據(jù)不同的嚴謹程度與功能分為基本正則表達式與擴展正則表達式。基礎正則表達式是常用的正則表達式的最基礎的部分。
在Linux?系統(tǒng)中常見的文件處理工具中grep?與sed?支持基礎正則表達式,而egrep?與awk?支持擴展正則表達式。
==基本正則表達式元字符(gerp)
元字符?功能?示例
^?行首定位符:?^love?
$?行尾定位符?:love$?
.?匹配單個字符?:l..e?
*?匹配前導符?0?到多次:?ab*love
.*?任意多個字符
[]?匹配指定范圍內(nèi)的一個字符:?[lL]ove
[?-?]?匹配指定范圍內(nèi)的一個字符:?[a-z0-9]ove
[^]?匹配不在指定組內(nèi)的字符?:[^a-z0-9]ove
\?用來轉義元字符?:love\.?
\<?詞首定位符?:\<love?
\>?詞尾定位符?:love\>?
x\{m\}?字符?x?重復出現(xiàn)?m?次:?o\{5\}
x\{m,\}?字符?x?重復出現(xiàn)?m?次以上:?o\{5,\}?
x\{m,n\}?字符?x?重復出現(xiàn)?m?到?n?次:?o\{5,10\}“*”僅匹配前導符這一個字符

“[ ]”匹配范圍內(nèi)一個字符

“^”在元字符集合“[ ]”符號內(nèi)外的作用不同

轉義符“\”的使用,及特殊元字符的使用

{}限定匹配個數(shù)

===擴展正則表達式元字符(egrep)
+?匹配一個或多個前導字符?[a-z]+ove?
??匹配零個或一個前導字符?lo?ve?
a|b?匹配?a?或?b?love|hate
()?組字符?loveable|rs?love(able|rs)?ov+
(..)(..)\1\2?標簽匹配字符?(love)able\1er
x{m}?字符?x?重復?m?次?o{5}?
x{m,}?字符?x?重復至少?m?次?o{5,}
x{m,n}?字符?x?重復?m?到?n?次?o{5,10}()匹配()里的所有字符,順序相同

2、文本處理器:在?Linux?系統(tǒng)中常見的文件處理工具中?grep?與?sed?支持基礎正則表達式,而?egrep?與?awk?支持擴展正則表達式。
grep/egrep:過濾,查找。
grep?[選項]?‘操作’?參數(shù)
常用選項
-n:顯示行號 -i:不分大小寫 -v:反向查找 -c:統(tǒng)計數(shù)量
awk與sed請看下章。
分享標題:shell正則表達式RE及grep
當前鏈接:http://www.chinadenli.net/article34/peehpe.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、網(wǎng)站設計公司、微信公眾號、、服務器托管、建站公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)