我有一个以下模式的字符串模式(用于 xml 测试报告程序):
'testsets.testcases.[testset].[testcase]-[date-stamp]'
例如:
a='testsets.testcases.test_different_blob_sizes.TestDifferentBlobSizes-20150430130436'
我知道我总是可以通过以下方式解析 testset 和 testcase 名称:
temp = a.split("-")[0]
current = temp.split(".")
testset = '.'.join(current[:-1]) + ".py"
testcase = current[-1]
但是,我想使用更像 pythonic 的方式来完成此操作,例如 regex 或我会在一行中完成的任何其他表达式。我怎样才能做到这一点?
请您参考如下方法:
你可以试试:
testset, testcase = re.search('(.*)\.(.*)-.*', a).group(1, 2)
testset += '.py'
re.search返回 MatchObject在火柴上,它有一个 group我们可以用来为正则表达式提取匹配组的方法(正则表达式中的“()”)。
