区别 |Python str.split()和re.split()

str.split()

1、单一分隔符,使用str.split()即可 

2、str.split不支持正则及多个切割符号,不感知空格的数量

 

re.split()

原型: re.split(pattern, string, maxsplit=0)

1、多个分隔符,复杂的分隔情况,使用re.split。通过正则表达式将字符串分离,如果用括号()将正则表达式括起来,那么匹配的字符串也会被列入到list中返回。maxsplit是分离的次数,maxsplit=1分离一次,默认为0,不限制次数。

eg:

import re
a='w w w'
# 1.单字符分隔
re.split(r'\s',a)

输出:['w','w','w']


# 2.单字符只分割一次
re.split(r'\s',a,1)

输出:['w','ww']




c='w w,w\w'
# 3.多个字符分割
re.split(r'[\s,\\]',c)

输出:['w', 'w', 'w', 'w']


#  4、多字符分隔,且返回的列表保留分隔符
re.split(r'([\s,\\])',c)

输出:['w', ' ', 'w', ',', 'w', '\\', 'w']

#  5.还原:
re.split(r'(\s,\\)',c)

输出:['w w,w\\w']

猜你喜欢

转载自www.cnblogs.com/zwt20120701/p/12207361.html