linux shell编程学习笔记(9)正则表达式
1、什么是正則表達(dá)式
用一串符號(hào)描述有共同屬性的數(shù)據(jù)
一串符號(hào):元符號(hào)
——正則表達(dá)式通常被用來檢索和/或替換那些符合某個(gè)模式的文本內(nèi)容。許多程序設(shè)計(jì)語言都支持利用正則表達(dá)式進(jìn)行字符串操作。對(duì)于系統(tǒng)管理員來講,正則表達(dá)式貫穿在我們的日常運(yùn)維工作中,無論是查找某個(gè)文檔,抑或查詢某個(gè)日志文件分析其內(nèi)容,都會(huì)用到正則表達(dá)式。
——其實(shí)正則表達(dá)式,只是一種思想,一種表示方法。只要我們使用的工具支持表示這種思想那么這個(gè)工具就可以處理正則表達(dá)式的字符串。常用的工具有grep, sed, awk 等
2、正則表達(dá)式的語法格式
#grep [選項(xiàng)] ?‘正則表達(dá)式’ ? 文件列表 ? ? ?-
#前置命令 ?| grep [選項(xiàng)] ?‘正則表達(dá)式’
3、正則表達(dá)式處理順序:
·以行為處理單位
·對(duì)數(shù)據(jù)按先后順序逐行處理
·處理完當(dāng)前行后,自動(dòng)處理下一行,直到末行為止
·默認(rèn)輸出與表達(dá)式匹配的行
4、正則表達(dá)式怎么寫
——正則表達(dá)式由元字符組成
4.1、基本元字符
(1)^
——匹配行首
格式:^匹配字符
(2)$
——匹配行尾
格式:匹配字符$
(3).
——匹配任意單個(gè)字符。換行符\n 除外
(4)[]
——匹配范圍內(nèi)的任意一個(gè)字符
——匹配優(yōu)先
(5){}
——限制正則表達(dá)式的匹配次數(shù)
1){n} 匹配n次
2){n,m} 匹配n-m次
3){n,} 匹配至少n次
匹配空格
(6)+
——至少匹配一次(一次或多次)
(7)?
——最多匹配一次(0次或1次)
(9)*
——匹配任意次數(shù)。(零次到多次)
(10)單詞邊界匹配
1)匹配整個(gè)單詞/單詞邊界
如: \broot\b
或
? ? ? \<root\>
[root@moni01 tmp]# egrep '\broot\b' /etc/passwd root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologin [root@moni01 tmp]#2)匹配單詞的開頭
如:\broo
或
? ? ? ? \<roo
3)匹配單詞的結(jié)束
如:oot\b
或
? ? ? ? Oot\>
轉(zhuǎn)載于:https://blog.51cto.com/huanglianfeng/1365227
總結(jié)
以上是生活随笔為你收集整理的linux shell编程学习笔记(9)正则表达式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《JAVA与模式》之责任链模式
- 下一篇: Getting Started with