import re # coding: utf=8 regexes = { re.compile( r'^!([^!].*)$' ): r'== \1 ==', re.compile( r'^!!([^!].*)$' ): r'=== \1 ===', re.compile( r'^!!!([^!].*)$' ): r'==== \1 ====', re.compile( r'^!!!!([^!].*)$' ): r'===== \1 =====', re.compile( r'^\{\{\{$' ): r'', re.compile( r'^}}}$' ): r'', } f = open('notes.dfm', 'r') s = f.read() new = '' f.close() for line in s.splitlines(): printed = False for compiled_object in regexes: m = compiled_object.match(line) if m: new_line = compiled_object.sub(regexes[compiled_object], line) new += new_line + '\n' printed = True if not printed: new += line + '\n' printed = True f = open('notes2.dfm','w') f.write(new)