Skip to content

Commit 1a74b34

Browse files
committed
两点水
1 parent c7c4d7a commit 1a74b34

File tree

15 files changed

+799
-0
lines changed

15 files changed

+799
-0
lines changed

Code/Python14Code/.idea/Python14Code.iml

Lines changed: 11 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code/Python14Code/.idea/inspectionProfiles/profiles_settings.xml

Lines changed: 7 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code/Python14Code/.idea/misc.xml

Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code/Python14Code/.idea/modules.xml

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code/Python14Code/.idea/workspace.xml

Lines changed: 593 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code/Python14Code/com/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
#!/usr/bin/env python3
2+
# -*- coding: UTF-8 -*-
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
#!/usr/bin/env python3
2+
# -*- coding: UTF-8 -*-
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
#!/usr/bin/env python3
2+
# -*- coding: UTF-8 -*-
3+
4+
import re
5+
6+
# 设定一个常量
7+
a = '两点水|twowater|liangdianshui|草根程序员|ReadingWithU'
8+
9+
# 判断是否有 “两点水” 这个字符串,使用 PY 自带函数
10+
11+
print('a 是否含有“两点水”这个字符串:{0}'.format(a.index('两点水') > -1))
12+
print('a 是否含有“两点水”这个字符串:{0}'.format('两点水' in a))
13+
14+
# 正则表达式
15+
16+
findall = re.findall('两点水', a)
17+
print(findall)
18+
19+
if len(findall) > 0:
20+
print('a 含有“两点水”这个字符串')
21+
else:
22+
print('a 不含有“两点水”这个字符串')
23+
24+
# 选择 a 里面的所有小写英文字母
25+
26+
re_findall = re.findall('[a-z]', a)
27+
28+
print(re_findall)
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
#!/usr/bin/env python3
2+
# -*- coding: UTF-8 -*-
3+
4+
import re
5+
6+
a = 'uav,ubv,ucv,uwv,uzv,ucv,uov'
7+
8+
# 字符集
9+
10+
# 取 u 和 v 中间是 a 或 b 或 c 的字符
11+
findall = re.findall('u[abc]v', a)
12+
print(findall)
13+
# 如果是连续的字母,数字可以使用 - 来代替
14+
l = re.findall('u[a-c]v', a)
15+
print(l)
16+
17+
# 取 u 和 v 中间不是 a 或 b 或 c 的字符
18+
re_findall = re.findall('u[^abc]v', a)
19+
print(re_findall)
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
#!/usr/bin/env python3
2+
# -*- coding: UTF-8 -*-
3+
4+
import re
5+
6+
a = 'uav_ubv_ucv_uwv_uzv_ucv_uov&123-456-789'
7+
8+
# 概括字符集
9+
10+
# \d 相当于 [0-9] ,匹配所有数字字符
11+
# \D 相当于 [^0-9] , 匹配所有非数字字符
12+
findall1 = re.findall('\d', a)
13+
findall2 = re.findall('[0-9]', a)
14+
findall3 = re.findall('\D', a)
15+
findall4 = re.findall('[^0-9]', a)
16+
print(findall1)
17+
print(findall2)
18+
print(findall3)
19+
print(findall4)
20+
21+
# \w 匹配包括下划线的任何单词字符,等价于 [A-Za-z0-9_]
22+
findall5 = re.findall('\w', a)
23+
findall6 = re.findall('[A-Za-z0-9_]', a)
24+
print(findall5)
25+
print(findall6)
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#!/usr/bin/env python3
2+
# -*- coding: UTF-8 -*-
3+
4+
import re
5+
6+
a = 'java*&39android##@@python'
7+
8+
# 数量词
9+
10+
findall = re.findall('[a-z]{4,7}', a)
11+
print(findall)
12+
13+
# 贪婪与非贪婪
14+
15+
re_findall = re.findall('[a-z]{4,7}?', a)
16+
print(re_findall)
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
#!/usr/bin/env python3
2+
# -*- coding: UTF-8 -*-
3+
4+
import re
5+
6+
a = '347073565'
7+
8+
# 边界匹配符
9+
10+
findall = re.findall('\d{6}565$', a)
11+
12+
print(findall)
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#!/usr/bin/env python3
2+
# -*- coding: UTF-8 -*-
3+
4+
import re
5+
6+
a = 'pythonpythonpython'
7+
8+
# 组
9+
10+
findall = re.findall('(python){3}', a)
11+
print(findall)
12+
13+
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
#!/usr/bin/env python3
2+
# -*- coding: UTF-8 -*-
3+
4+
import re
5+
6+
a = 'Python*Android*Java-888'
7+
8+
# 把字符串中的 * 字符替换成 & 字符
9+
sub1 = re.sub('\*', '&', a)
10+
print(sub1)
11+
12+
# 把字符串中的第一个 * 字符替换成 & 字符
13+
sub2 = re.sub('\*', '&', a, 1)
14+
print(sub2)
15+
16+
17+
# 把字符串中的 * 字符替换成 & 字符,把字符 - 换成 |
18+
19+
# 1、先定义一个函数
20+
def convert(value):
21+
group = value.group()
22+
if (group == '*'):
23+
return '&'
24+
elif (group == '-'):
25+
return '|'
26+
27+
28+
# 第二个参数,要替换的字符可以为一个函数
29+
sub3 = re.sub('[\*-]', convert, a)
30+
print(sub3)
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
#!/usr/bin/env python3
2+
# -*- coding: UTF-8 -*-
3+
4+
# 提取图片的地址
5+
6+
import re
7+
8+
a = '<img src="https://s-media-cache-ak0.pinimg.com/originals/a8/c4/9e/a8c49ef606e0e1f3ee39a7b219b5c05e.jpg">'
9+
10+
# 使用 re.search
11+
search = re.search('<img src="(.*)">', a)
12+
# group(0) 是一个完整的分组
13+
print(search.group(0))
14+
print(search.group(1))
15+
16+
# 使用 re.findall
17+
findall = re.findall('<img src="(.*)">', a)
18+
print(findall)
19+
20+
# 多个分组的使用(比如我们需要提取 img 字段和图片地址字段)
21+
re_search = re.search('<(.*) src="(.*)">', a)
22+
# 打印 img
23+
print(re_search.group(1))
24+
# 打印图片地址
25+
print(re_search.group(2))
26+
# 打印 img 和图片地址,以元祖的形式
27+
print(re_search.group(1, 2))
28+
# 或者使用 groups
29+
print(re_search.groups())

0 commit comments

Comments
 (0)