匹配數字: ^[0-9]+$
123##範圍中的乙個數字,+表示前面的物件出現1次或者多次
匹配mail
[a-z0-9_]+@[a-z0-9]+\.[a-z]+
##\.這裡的\表示轉義,.的意思類似於shell中的?,表示任意單個字元
匹配ip
[0-9]
\.[0-9]
.[0-9]
.[0-9]
##[0-9]表示數字0-9出現1-3次數
grep
'^root' /etc/passwd 表示以root開頭的
grep
'^[rc]oot' /etc/passwd 表示以r或者c開頭的
grep
'^[^rc]oot' /etc/passwd 表示不以r或者c開頭的
^在裡面表示取反,不要
^在外面表示以誰開頭
\轉移字元會讓這些元字元失去作用,讓其還回原意。
love\. 表示只匹配love.
\(..\)在vim裡面用的多:
:% s/10.16.130.1/172.16.130.5/ 表示將172.16.130.1替換成172.16.130.5
:% s/\(172.16.130.\)1/\15/ 表示將172.16.130.1替換成172.16.130.5,其中\1代表\(172.16.130.\)的內容
:3,9s/\(.*\)/#\1/ 表示將3-9行給注釋掉
eg3:下面第乙個表示o出現2次
/love/ 匹配love
/^love/ 匹配以love開頭的行
/love$/ 匹配love結尾的行
/l.ve/ 匹配l任意字元ve
/lo*ve/ 匹配l零到多個o可能沒有o的ve
/[li]ove/ 匹配love或love
/love[a-z]/ 匹配love後面跟著小寫字母
/love[^a-za-z0-9]/ 匹配love非字元
/.*/ 匹配整行,匹配任意一行
/^$/ 匹配空行
/^[a-z]
..$/ 注意這裡匹配的是3個字元
/^[a-z]
[a-z]*3[0-5]/ 匹配a-z開頭的,零到任意多個的a-z字元的,再接著跟著3以及0-5字元
/[a-z]*\./ 匹配零到多個小寫字母,後面跟著.
/^ *[a-z]
[a-z]
[a-z]$/ 匹配零到多個空格開頭的,跟著[a-z]
[a-z]
[a-z]結尾的行
/^[a-za-z]*[^,]
[a-za-z]*$/ 匹配零到多個英文本母開頭,跟著乙個非逗號,再跟著乙個字母結尾的
/\/ 匹配fourth
/\/ 匹配以f開頭,th結尾的單詞
/52\./ 匹配5出現2次
空行,即換行符和回車
/^$/
/^[ \t]*$/ 零個或多個空格或tab
注釋行/^#/
/^[ \t]*#/
正規表示式 RE
最近一段時間在研究nginx的rewirte重寫機制,因此對re需要有一定的了解,看了想關的文章,因此自己來寫一篇類似總結性的的文章。基本來說,正規表示式是一種用來描述一定數量文字的模式。regex regular express。本文用 regex 來表示一段具體的正規表示式。一段文字就是最基本的...
re正規表示式
1.數字 0 9 2.n位的數字 d 3.至少n位的數字 d 4.m n位的數字 d 5.零和非零開頭的數字 0 1 9 0 9 6.非零開頭的最多帶兩位小數的數字 1 9 0 9 0 9 7.帶1 2位小數的正數或負數 d d 8.正數 負數 和小數 d d 9.有兩位小數的正實數 0 9 0 9...
Re正規表示式
import re 匯入re模組 重複出現的字串 對於重複出現的字串可以用大括號內部加上重複次數的方式表達 r d 分組 使用小括號分組 r d d 重複出現的字串 對於重複出現的字串可以用大括號內部加上重複次數的方式表達 r d 重複出現的字串 對於重複出現的字串可以用大括號內部加上重複次數的方式...