我有一个字符串列表,当找到'y'或'm'时,每个字符串都需要拆分:
mylist = ['3m10y','10y20y','18m2y']
以下项目:
splitlist = [['3m','10y'],['10y','20y'],['18m','2y']]
我正在考虑使用re.split()但是我不能使用'或'条件来告诉函数在找到'm'或'y'时拆分。
任何帮助表示赞赏! 感谢
答案 0 :(得分:7)
尝试使用findall
代替split
:
>>> re.findall(r'\d+[ym]', '3m10y')
['3m', '10y']
[my]
是m
或y
。
答案 1 :(得分:4)
>>> items = re.split(r'(m|y)', '10m2y4m55y55y53m')
>>> items
['10', 'm', '2', 'y', '4', 'm', '55', 'y', '55', 'y', '53', 'm', '']
>>> [''.join(p) for p in zip(items[::2], items[1::2])]
['10m', '2y', '4m', '55y', '55y', '53m']