擅长:python、mysql、java
<p>我只需尝试将所有内容解析为日期,然后在成功时进行更新:</p>
<pre><code>import datetime
shortnames = ['H04_IF_FigF2_LCC_05Apr12_mm',
'H04_BS_IF_FigF2_LCC_05Apr12_mm_2', 'HH_IF_FigF2_SS_05Apr12_mm',
'D01_BS_IF_FigF2_LCC_05Apr12_mm_1', 'D01_BS_FigF2_Overview_05Apr12_mm']
def update_time(name):
old_split = name.split('_')
new_split = []
date_fmt = '%d%b%y'
new_date = datetime.datetime.strftime(datetime.datetime.now(), date_fmt)
for n in old_split:
try:
old_date = datetime.datetime.strptime(n, date_fmt)
new_split.append(new_date)
except ValueError:
new_split.append(n)
return '_'.join(new_split)
>>> [update_time(filename) for filename in shortnames]
['H04_IF_FigF2_LCC_10Apr12_mm', 'H04_BS_IF_FigF2_LCC_10Apr12_mm_2', 'HH_IF_FigF2_SS_10Apr12_mm', 'D01_BS_IF_FigF2_LCC_10Apr12_mm_1', 'D01_BS_FigF2_Overview_10Apr12_mm']
</code></pre>
<p>这样我就不必关心任何内部细节了。在</p>