匹配的问题

来源:3-2 python正则表达式语法(二)

Liaobaozai

2017-09-10 17:35

ma = re.match(r'[1-9]?[0-9]', '09')

最后ma.group出来的是‘0’老师解释没听明白啊。

写回答 关注

1回答

  • Poison丶刺心
    2017-09-11 11:17:52
    已采纳

    [1-9]?[0-9]:

    这个里面是两个部分[1-9]?和[0-9]

    第一部分:是匹配1到9之间的数字出现0次或1次

    第二部分:是匹配0到9之间的数字至少出现一次

    所以匹配‘09’这个字符串的时候,第一部分中不包含‘0’这个字符串,暂时的匹配结果为‘’(即空字符串),所以执行第二部分,第二部分包含‘0’,暂时的匹配结果为‘0’,匹配结束,输出结果‘0’

    Liaoba...

    所以是对应的[1-9]?匹配的是‘0’,[0-9]匹配的是‘9’?

    2017-09-11 13:32:37

    共 1 条回复 >

python正则表达式

如何使用正则处理文本,带你对python正则有个全面了解

80575 学习 · 174 问题

查看课程

相似问题