为什么会匹配出一个空字符

来源:10-2 元字符与普通字符

gakkiiiiiiiiiiiii

2019-06-29

lis = ‘123213213’

r = re.findall(’\d*’,lis)
print®
运行结果为:[‘123213213’, ‘’]
为什么会匹配出一个空字符

写回答

2回答

慕粉916768

2019-08-14

'*'表示匹配0次或多次,'\d*'就表示要查找0个数字(空)或多个数字,所以会出现2个结果。如果换成 '\d+','+'表示至少前面的数字匹配一次或多次,那么就不会有空字符串出现。

0
0

白龙马2020

2019-07-01

对它前面的正则式匹配0到任意次重复, 尽量多的匹配字符串。 ab* 会匹配 'a', 'ab', 或者 'a'``后面跟随任意个 ``'b'。

或者说这个字符串结尾是个空字符结尾的,不知道对不对!

0
0

Python3.8系统入门+进阶 (程序员必备第二语言)

语法精讲/配套练习+思考题/原生爬虫实战

14640 学习 · 4477 问题

查看课程