1.1、正規表示式:
正規表示式(regular expression)是一種字元模式(pattern),用來匹配字串中的子串。
例如:ro+t 可以匹配 root rooot等
ro*t 可以匹配 rot root rooot等
1.1、正規表示式元字元:元字元是具有特殊含義的字元,不同於字元表面的含義。正規表示式元字元一般由執行模式匹配的程式來解析,比如grep/egrep、vi/vim、sed、python等。
1.1.1、基本正則元字元:
元字元含義示例^
行首定位符
^shell
$行尾定位符
shell$
.匹配任一字元
she…
*匹配前導符0到多次
she*l
.*任意多個字元
匹配括號內的任一字元
[ss]hell
[^]匹配不在括號內^後的任一字元
[^ss]hell ,[^a-z0-9]
[ a-z ]
匹配括號內a到z範圍內任一字元
[a-z0-9]
\轉義符,用來轉義元字元
\. \*
\<
詞首定位符
\\>
詞尾定位符
shell\>
\(…\)
匹配稍後使用的字元標籤
替換ip :%s/10.0.1.199/10.0.1.219/,:%s/\(10.0.1.\)199/\1219, 給每行加注釋:%s/\(.*\)/#\1
x\匹配字元x出現m次
x\匹配字元x出現m次以上
x\匹配字元x出現m到n次
1.1.2、擴充套件正則元字元:
元字元含義示例+
匹配1或多個前導字元
s+hell
?匹配0或1個前導字元
s?hell|或
a()組字元abc
(…)(…)\1\2
標籤匹配字元
sh(el)l\1xyz
x匹配字元x重複出現m次
x匹配字元x重複出現m次以上
x匹配字元x重複出現m到n次
1.1.3 posix字元
元字元含義
示例[:alnum:]
字母或數字字元
[[:alnum:]]+
[:alpha:]
字母字元
[[:alpha:]]
[:digit:]
數字字元
[[:digit:]]*
[:blank:]
空格與製表符
[[:blank:]]?
[:lower:]
小寫字母
[[:lower:]]
[:upper:]
大寫字母
[[:upper:]]
[:punct:]
標點符號
[[:punct:]]?
[:space:]
回車,換行等在所有空白符
[[:space:]]*
bash正規表示式
星號 匹配它前面的字串或正規表示式任意次 包括0次 比如 1122 可能匹配的字串有 112 1122 1122222 1123131231 句號.匹配除換行符之外的任意乙個字元。比如 112.將匹配112 至少乙個字元 可能匹配的字串有 1121 1122 112abc 1123131231 但不...
bash 正規表示式初步 sed
sed是一種流編輯器,它是文字處理中非常中的工具,能夠完美的配合正規表示式使用,功能不同凡響。處理時,把當前處理的行儲存在臨時緩衝區中,稱為 模式空間 pattern space 接著用sed命令處理緩衝區中的內容,處理完成後,把緩衝區的內容送往螢幕。接著處理下一行,這樣不斷重複,直到檔案末尾。檔案...
正規表示式 正規表示式 總結
非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...