【简单正则表达式问题】
>>> m = re.match("()+", "abc")>>> m.groups()
('c',)
这段代码groups为什么是c呢,为什么后面还有个逗号
我把正则表达式换成(+)后就不是c了,是不是因为最后一个匹配的字符是c,那逗号又是怎么来的呢
谢谢大佬们 逗号代表这是一个元组,因为('c')是一个字符串,而('c',)才是一个元组 1.因为括号默认就算捕获组,捕获组输出默认就是以元组形式,看这个应该能解答你的疑问:https://blog.csdn.net/ningyanggege/article/details/105254241
2.()+的加号配合match从头匹配的机制,实际语法就可以理解为这3种情况:(a)
a(b)
ab(c)
又因为默认只显示捕获组(即括号)里的字符,所以就看到的是(c,) ,但实际已经匹配了abc
>>>m = re.match("()+", "abc")
>>>m.group(0)
'abc'
页:
[1]