使用maxsplit参数的python re.split
使用使用maxsplit参数的python re.split,python,python-3.x,Python,Python 3.x,使用re.split时,我希望maxslit是返回列表的长度(-1) 文件中的例子表明了这一点 但是当有一个捕获组(可能还有其他一些情况)时,我不理解maxspilt参数是如何工作的 >>re.split((\W+),“单词,单词,单词。”,maxslit=1) [“单词”,“单词”,“单词,单词” >>>关于拆分(“(:)”,“:a:b::c”,maxsplit=2) ['','':'','a','':'','b::c'] >>>关于拆分(“(:)”,“:a:b::c”,maxsplit=2)
re.split
时,我希望maxslit
是返回列表的长度(-1)
文件中的例子表明了这一点
但是当有一个捕获组(可能还有其他一些情况)时,我不理解maxspilt
参数是如何工作的
>>re.split((\W+),“单词,单词,单词。”,maxslit=1)
[“单词”,“单词”,“单词,单词”
>>>关于拆分(“(:)”,“:a:b::c”,maxsplit=2)
['','':'','a','':'','b::c']
>>>关于拆分(“(:)”,“:a:b::c”,maxsplit=2)
['':',':','a',':',':','b::c']
我遗漏了什么?这不是关于
maxplit
,而是关于在正则表达式中使用括号:
如果模式中使用了捕获括号,那么模式中所有组的文本也将作为结果列表的一部分返回
文档:这不是关于
maxsplit
,而是关于在正则表达式中使用括号:
如果模式中使用了捕获括号,那么模式中所有组的文本也将作为结果列表的一部分返回
文档:因此我猜测
maxslit
确定拆分的数量,括号返回其他组
示例”:a:b::c“
withmaxslit=2
将字符串拆分为三部分:“”、“a”、“b::c” 但是因为模式
“(:)”
也包含一个捕获的组,所以它在两部分之间返回:
“,”:“,”a“,“:”,“b::c”
如果模式是
”((:)”
,则每个冒号在部分之间返回两次,因此我猜测maxslit
确定拆分的数量,括号返回其他组
示例”:a:b::c“
withmaxslit=2
将字符串拆分为三部分:“”、“a”、“b::c” 但是因为模式
“(:)”
也包含一个捕获的组,所以它在两部分之间返回:
“,”:“,”a“,“:”,“b::c”
如果模式为“”((:)”
,则每个冒号在两个部分之间返回两次