Python_Example_Process 正則表達 Re 學習/經驗/示例
阿新 • • 發佈:2018-11-16
Author: 楚格
2018-11-16
IDE: Pycharm2018.02 Python 3.7
KeyWord : 正則表達 Re
Explain:
-------------------------------------------------
--
1 # coding=utf-8 2 #--------------------------------- 3 ''' 4 # Author : chu ge5 # Function: Re 正則表示式 regular expression 6 # 7 ''' 8 #--------------------------------- 9 10 # ----------------------- 11 ''' 12 13 # 使用match 方法進行匹配操作 14 # result = re.match(正則表示式,要匹配的字串) 15 16 # 如果上一步匹配到資料的話,可以使用group方法來提取資料 17 # result.group 18 19 原始字元 20 r" " 21 22 單字元匹配 23 24 . 匹配任意1個字元,除了\n25 [] 匹配[]中列舉的字元 26 \d 匹配數字,即 0-9 27 \D 匹配非數字,即非數字 28 \s 匹配空白,即空格,tab鍵 29 \S 匹配非空白 30 \w 匹配單詞字元,即a-z,A-Z 31 \W 匹配非單詞字元 32 33 多字元匹配 34 35 * 匹配前一個字元出現0次或者無限次,即可有可無 36 + 匹配前一個字元出現1次或者無限次,即至少一次 37 ? 匹配前一個字元出現1次或者0次,即要麼1次要麼無限次 38 39 {m} 匹配前一個字元出現m次 40 {m.}匹配前一個字元至少出現m次 41 {m,n}匹配前一個字元出現從m到n次 4243 44 表示邊界 45 46 ^ 匹配字串開頭 47 $ 匹配字串結尾 48 \b 匹配一個單詞的邊界 49 \B 匹配非單詞邊界 50 51 52 匹配分組 53 54 | 匹配左右任意一個表示式 55 (ab) 將括號中字元作為一個分組 56 \num 引用分組num匹配到的字串 57 (?p<name>) 分組起別名 58 (?P<name>) 引用別名為name分組匹配到的字串 59 60 61 62 ''' 63 # ------------------------ 64 import re 65 66 67 68 ''' 69 # ============================================================================ 70 # 測試專用 71 # ============================================================================ 72 ''' 73 if __name__ == "__main__": 74 #匹配 75 # result = re.match(r'<(?P<name1>\w*)><(?P<name2>\w*)>.*</(?P=name2)></(?P=name1)>','<html><h1>www.itcast.cn</h1></html>') 76 # print(result) 77 # result1 = result.group() 78 # print(result1) 79 80 81 # 搜尋 82 result = re.search(r"\d+,\b\d+","閱讀次數為12345,9999") 83 print(result) 84 result1 = result.group() 85 print(result1) 86 87 88 # 統計總數 89 # result = re.findall(r"\d+","99 3344, 223") 90 # print(result) 91 92 # 替換 93 # result = re.sub(r"\d","195","4999") 94 # print(result)
--
-------------------------------------------------