簡單介紹一下正規表示式相關知識(內容主要從這裡提取的)。正規表示式就是記錄文字規則的**。
元字元
常見的元字元有. ,*,?,\d,\s,\w,\b,+,$,^等。.匹配換行符以外的任意字元,*表示它前面的內容可以連續使用任意次,他倆連在一塊就表示不包含換行符的任意字串,?表示重複零次或一次,\d匹配一位數字,\s匹配任意的空白符,\w匹配字母或數字或下劃線或漢字等,\b匹配單詞的開始或結束,+匹配1次或任意次。$匹配字串的結束。.^匹配字串的開始。
舉個簡單的例子,^\d$匹配以數字開頭,長度大於6,小於12的數字串。
重複
.,*,+,,都表示重複的方式
字元類
用表示,[aeiou]匹配任意乙個母音字母,[0-9]等同於\d.
分歧條件
用|符號把不同的規則分隔開,滿足乙個規則就符合規則。
分組
如果我們想要重複多個字元,可以用小括號指定子表示式,叫做分組。
反義
\w,\s,\d等,\w匹配任意不是字母數字下劃線漢字的字元,\s匹配任意不是空白字元的字元,\d匹配任意非字元的字元
後向引用
在匹配的規則的表示式中,如果包含分組,就自動會從左到右給分組乙個序號,用\1,\2表示。在表示式或其他程式中可以用\1來引用這些分組而不用重複的編寫規則。
零寬斷言
匹配某些內容之前或之後的字串,(?=exp)匹配exp前面的部分,(?<=exp)匹配exp後面的部分,這兩種匹配 的結果都不包含exp本身。
負向零寬斷言
表示斷言此位置之前或之後不能出現exp,其中(?!exp)表示之後不能出現exp,(?貪婪與懶惰
直接用例子來說明比較方便,例如,表示式a.*b匹配字母a和b之間的內容,預設情況下會匹配盡可能多的字元,例如aabaab,會匹配得到aabaab,而如果在表示式之後加上乙個?,就會匹配最短的內容,a.*?b再次來匹配時,就會得到ab,ab
python正規表示式及使用正規表示式的例子
正規表示式 正則表達用來匹配字串 正規表示式匹配過程 正規表示式語法規則 匹配除換行 n 外的任意字串 abcabc 轉義字元,使後乙個字元改變原來的意思 a c a c 字符集,對應的位置可以是字符集中任意字元,字符集中的字元可以逐個列出,也可以給出範圍,如 abc 或 a c 第乙個字元如果是 ...
使用正規表示式
如果原來沒有使用過正規表示式,那麼可能對這個術語和概念會不太熟悉。不過,它們並不是您想象的那麼新奇。請回想一下在硬碟上是如何查詢檔案的。您肯定會使用 和 字元來幫助查詢您正尋找的檔案。字元匹配檔名中的單個字元,而 則匹配乙個或多個字元。乙個如 data?dat 的模式可以找到下述檔案 data1.d...
使用正規表示式
本文節選自 並有稍微修正。使用正規表示式 您可以使用正規表示式做很多事情。在以下的列表中,您可以找到一些最普通 最常用的正規表示式的例子。表示文字串必須在一行的開頭。所以,當查詢行的開頭只為 hosts 的行,可以使用命令 grep ls hosts 代表了一行的結尾。所以,當查詢行的結尾只為 ho...