我有以下内容:
>>> x='STARSHIP_TROOPERS_INVASION_2012_LOCDE'
>>> re.split('_\d{4}',x)[0]
'STARSHIP_TROOPERS_INVASION'
我如何获得包含年份的信息?例如:
STARSHIP_TROOPERS_INVASION_2012
请注意,有数万个标题,我需要为每个标题拆分年份。我不能在这里执行普通的 python split()。
请您参考如下方法:
A more straightforward solution将使用 re.search()/MatchObject.end() :
m = re.search('_\d{4}', x)
print x[:m.end(0)]
如果你想坚持使用split(),你可以use a lookbehind :
re.split('(?<=_\d{4}).', x)
(即使年份位于字符串的末尾也能正常工作,因为 split() 会返回一个包含原始字符串的数组,以防找不到分隔符。)
