Python重新将日期与其他数据分开

时间:2016-03-04 07:02:43

标签: regex python-3.x

这不应该太难,但由于某种原因,我无法弄清楚如何做到这一点 我有一个日期后跟一些数据,它们都是相同的字符串,如:

2015-11-27 A1,B3
2015-11-23 A1
2015-11-22 A1,B3,Z6

现在我正在尝试re.compile(r'^(\d\d\d\d-\d\d-\d\d) (\w\d)(,\w\d)?(,\w\d)?')
这样可行,但如果少于三个字符/数字对,则返回一个或两个空字符串 有没有办法可以压缩编译以提高效率这对我来说只是觉得太暴力了。

1 个答案:

答案 0 :(得分:1)

非常简单,我想:

import re

string = """2015-11-27 A1,B3
2015-11-23 A1
2015-11-22 A1,B3,Z6"""

for line in re.split("\n", string):
    date, rest = re.split("\s", line)
    print "Date: " + date + ", Rest: " + rest

    #parts = re.split(",", rest)

a demo on ideone.com。显然,除非您在AB3Z6中使用逗号,否则不需要真正的正则表达式引擎(在这种情况下请更准确地说明字符串)。