grep與正規表示式
1、grep程式
linux下有文字處理三劍客
-- grep
、sed
、awk
grep : 文字行過濾工具
包含三個命令:grep egrep fgrep,他們是用來驚醒行模式匹配的
egrep = grep -e //使用拓展正規表示式進行匹配
fgrep = fast grep //只是用檔案萬用字元進行匹配
*grep 預設使用正規表示式進行文字匹配
用法:grep [option] ... pattern [檔名
]常見選項(opton):
-e //支援使用拓展的正規表示式(
ere)
-p //使用
perl
語言的正規表示式引擎進行搜尋(每一種語言的正規表示式引
擎都不相同,甚至sed 、
grep
、awk
所使用的引擎也不相同)
-f //指定檔案
-i //忽略大小寫
-o //僅僅輸出匹配的內容(預設輸出的是匹配到的行)
-n //顯示行號
-v //反選
--color=auto // 語法著色
-w // 匹配固定的單詞顯示所在行
awk : 報告生成器(做文字輸出格式化)
2、pattern -- 正規表示式
作用:通過一些特殊字元,來表示一類字元內容,然後交給前面的命令來執行;如果使用特殊字元本身的含義就需要『\
』進行轉譯。
1、
1字元匹配
. // 任意乙個字元
// 匹配範圍內的任意乙個字元
[^] // 範圍外任意乙個字元
1、
2次數匹配
* // 匹配前面的字元0次到
n次\? //
匹配前面的字元0次到
1次\+ // 匹配前面字元1次到
n次\ // 匹配前面的乙個字元m次
\ // 匹配前乙個字元m到
n次\ // 匹配前面的字元0次到
n次(0必須加)
\ // 匹配前面乙個字元至少m次
1、
3位置錨釘
^ // 錨定行首
$ // 錨定行尾
\b //錨定詞首或詞尾(用在前面為詞首,後面為詞尾)
\> // 錨定詞尾
\< // 錨定詞首
1、
4分組特性:預設情況下,linux系統會為分組指定變數,變數的表示形式
\1 \2 \3 ...
(後向 引用)
abc* // 我們把
abc看成乙個整體
\(\) // 將裡面的看作是乙個整體進行匹配
補充:擴充套件正規表示式分組用「()」表示;
標準正規表示式中的「\
」可以去掉;
*匹配ip
grep與正規表示式
grep命令 功能 輸入檔案的每一行中查詢字串。基本用法 grep acinv color auto a n b n 搜尋字串 檔名 引數說明 a 將二進位制文件以文字方式處理 c 顯示匹配次數 i 忽略大小寫差異 n 在行首顯示行號 a after的意思,顯示匹配字串後n行的資料 b before...
grep與正規表示式
正規表示式只是字串的一種描述,只有和支援正規表示式的工具相結合才能進行字串處理。本文以grep為例來講解正規表示式。grep命令 功能 輸入檔案的每一行中查詢字串。基本用法 grep acinv color auto a n b n 搜尋字串 檔名 引數說明 a 將二進位制文件以文字方式處理 c 顯...
grep與正規表示式
grep 及正規表示式 文字查詢的需要,grep,egrep,fgrep grep 根據模式,去搜尋文字,並將符合模式的文字行顯示到螢幕 pattern 文字字元和正規表示式的元字元組合而成的匹配條件 grep options pattern file.grep color root etc pas...