python re.split?

Coldx_
  • 5
江西新手上路,请多包涵

re.split(r",(?![^(]*\))", a)
这个怎么理解

回复
阅读 542
1 个回答
✓ 已被采纳

根据正则匹配结果,按照匹配到的字符串去分割目标字符串

,(?![^(]*\)) 是正则表达式,这个表达式会匹配逗号 , ,和 (?![^(]*\))。即:在匹配逗号的同时排除包含括号和括号内的的任意字符。

>>> import re
>>> a = "sfdsf,(sdf),adfsf,sdfsf,(,),"
>>> b = re.split(r",(?![^(]*\))", a)
>>> print(b)
['sfdsf', '(sdf)', 'adfsf', 'sdfsf', '(,)', '']
宣传栏