diff options
Diffstat (limited to 'Chap9ProjRenameDates.py')
-rw-r--r-- | Chap9ProjRenameDates.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/Chap9ProjRenameDates.py b/Chap9ProjRenameDates.py new file mode 100644 index 0000000..8adc7c3 --- /dev/null +++ b/Chap9ProjRenameDates.py @@ -0,0 +1,36 @@ +#!/usr/bin/env python3 + +#Chapter 9 Project Renaming File Dates from American to European + +import os +import re +import shutil + +datePattern = re.compile(r'''^(.*?) #All text before date + ((0|1)?\d)- #One or two month digits + ((0|1|2|3)?\d)- #One or two digits for month + ((19|20)\d\d) #Four digits for the year + (.*?)$ #all text after the date + ''', re.VERBOSE) + + +for amerFilename in os.listdir('.'): + mo = datePattern.search(amerFilename) + + if mo == None: + continue + + beforePart = mo.group(1) + monthPart = mo.group(2) + dayPart = mo.group(4) + yearPart = mo.group(6) + afterPart = mo.group(8) + + euroFilename = beforePart + dayPart + '-' + monthPart + '-' + yearPart + afterPart + + absWorkingDir = os.path.abspath('.') + amerFilename = os.path.join(absWorkingDir, amerFilename) + euroFilename = os.path.join(absWorkingDir, euroFilename) + + print('Renaming "%s" to "%s"...' % (amerFilename, euroFilename)) + shutil.move(amerFilename, euroFilename) |