问题:需要将字符串拆分为不同的字段,但是分隔符(以及分隔符之间的空格)在整个字符串中并不一致
re.split() 方法比 str.split() 方法更为灵活,可以为分隔符指定多个模式
re.split() 方法返回一个 list
目标字符串:
In [15]: line
Out[15]: 'asdasdsadas ,,,, sdfdsfi ///ds...ds/essd// sdf..sdds ___ ___ sadads ___sa asdsa'
str.split() 测试:
In [17]: line.split(' ')
Out[17]:
['asdasdsadas', ',,,,', 'sdfdsfi', '///ds...ds/essd//', '', '','sdf..sdds', '', '___', '', '', '___', 'sadads', '', '___sa', '',
'asdsa']
re.split() 测试:
In [16]: re.split(r'[\W_\s]*',line)
Out[16]:
['asdasdsadas', 'sdfdsfi', 'ds','ds', 'essd', 'sdf', 'sdds', 'sadads', 'sa', 'asdsa']
匹配模式 patterns 中建议使用 字符集 [] ,不建议使用 捕获组 ()