首页 > 技术文章 > Python_Example_Process 正则表达 Re 学习/经验/示例

caochucheng 原文

 Author: 楚格

2018-11-16   

IDE: Pycharm2018.02   Python 3.7   

KeyWord :  正则表达 Re 

Explain:  

-------------------------------------------------

--

 1 # coding=utf-8
 2 #---------------------------------
 3 '''
 4 # Author  : chu ge 
 5 # 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个字符,除了

25 []  匹配[]中列举的字符
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次
42 
43 
44 表示边界
45 
46 ^   匹配字符串开头
47 $   匹配字符串结尾
48   匹配一个单词的边界
49 B  匹配非单词边界
50 
51 
52 匹配分组
53 
54 |       匹配左右任意一个表达式
55 (ab)    将括号中字符作为一个分组
56 
um    引用分组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+,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)

--

-------------------------------------------------

推荐阅读