import re
regex = re.compile(r"\ {0,1}([A-Za-z]*)\t([0-9]*)", flags=re.MULTILINE)
test_str = ("74572: Blaufelden\n"
" Alkertshausen\n"
" Billingsbach\n"
" Blaubach\n"
" Blaufelden\n"
" Brüchlingen\n"
" Ehringshausen\n"
" Emmertsbühl\n"
" Engelhardshausen\n"
" Erpfersweiler\n"
" Gammesfeld\n"
" Herrentierbach\n"
" Heufelwinden\n"
" Kottmannsweiler\n"
" Lentersweiler\n"
" Metzholz\n"
" Mittelbach\n"
" Naicha\n"
" Niederweiler\n"
" Raboldshausen\n"
" Saalbach\n"
" Simmetshausen\n"
" Wiesenbach\n"
" Wittenweiler\n\n"
"74575: Schrozberg\n"
" Bartenstein\n"
" Böhmweiler\n"
" Bossendorf\n"
" Bovenzenweiler\n"
" Eichholz\n"
" Eichswiesen\n"
" Enzenweiler\n"
" Ettenhausen\n"
" Funkstatt\n"
" Ganertshausen\n"
" Gemmhagen\n"
" Großbärenweiler\n"
" Gütbach\n"
" Hechelein\n"
" Heiligenbronn\n"
" Heuchlingen\n"
" Hirschbronn\n"
" Hornungshof\n"
" Hummertsweiler\n"
" Kälberbach\n"
" Kleinbärenweiler\n"
" Klopfhof\n"
" Könbronn\n"
" Krailshausen\n"
" Kreuzfeld\n"
" Leuzendorf\n"
" Lindlein\n"
" Mäusberg\n"
" Obereichenrot\n"
" Reichertswiesen\n"
" Reupoldsrot\n"
" Riedbach\n"
" Schmalfelden\n"
" Schrozberg\n"
" Sigisweiler\n"
" Speckheim\n"
" Spielbach\n"
" Spindelbach\n"
" Standorf\n"
" Untereichenrot\n"
" Wittmersklingen\n"
" Wolfskreut\n"
" Zell\n\n"
"74585: Rot am See\n"
" Beimbach\n"
" Bemberg\n"
" Brettenfeld\n"
" Brettheim\n"
" Hausen\n"
" Hegenau\n"
" Herbertshausen\n"
" Heroldhausen\n"
" Hertershofen\n"
" Hilgartshausen\n"
" Kleinansbach\n"
" Kleinbrettheim\n"
" Kühnhard\n"
" Lenkerstetten\n"
" Musdorf\n"
" Niederwinden\n"
" Oberndorf\n"
" Oberwinden\n"
" Reinsbürg\n"
" Reubach\n"
" Rot am See\n"
" Weikersholz\n\n"
"74599: Wallhausen\n"
" Asbach\n"
" Hengstfeld\n"
" Limbach\n"
" Michelbach an der Lücke\n"
" Roßbürg\n"
" Schainbach\n"
" Schönbronn\n"
" Wallhausen\n\n"
"91471: Illesheim\n"
" Illesheim 91471\n"
" Sontheim 91471\n"
" Urfersheim 91471\n"
" Westheim 91471\n\n"
"91541: Rothenburg\n"
" Bettenfeld\n"
" Burgstall\n"
" Detwang\n"
" Dürrenhof\n"
" Hemmendorf ob der Tauber\n"
" Herrnwinden\n"
" Leuzenbronn ob der Tauber\n"
" Reusch\n"
" Schandhof\n"
" Schnepfendorf ob der Tauber\n"
" Steinbach\n"
" Vorbach ob der Tauber\n\n"
"91583: Schillingsfürst\n"
" Altengreuth\n"
" Bersbronn\n"
" Faulenberg\n"
" Leipoldsberg\n"
" Neureuth\n"
" Neuweiler\n"
" Schillingsfürst\n"
" Schorndorf\n"
" Stilzendorf\n"
" Wittum\n"
" Wohnbach\n"
" Ziegelhütte\n\n"
"91583: Diebach\n"
" Bellershausen\n"
" Diebach\n"
" Oberoestheim\n"
" Unteroestheim\n"
" Wolfsau\n\n"
"91587: Adelshofen\n"
"Adelshofen\n"
" Gickelhausen\n"
" Großharbach\n"
" Haardt\n"
" Neustett\n"
" Ruckertshofen\n"
" Tauberscheckenbach\n"
" Tauberzell\n\n"
"91592:\n"
" Berbersbach am Wald\n"
" Gastenfelden\n"
" Hagenau am Wald\n"
" Morlitzwinden am Wald\n"
" Schönbronn\n"
" Schweikartswinden\n"
" Sengelhof\n"
" Traisdorf\n\n"
"91593: Burgbernheim\n"
"Buchheim\n"
" Burgbernheim\n"
" Hilpertshof\n"
" Hochbach\n"
" Pfaffenhofen\n"
" Schwebheim\n\n"
"91598: Colmberg\n"
"Auerbach\n"
" Bieg am Wald\n"
" Binzwangen\n"
" Colmberg\n"
" Häslabronn\n"
" Kurzendorf\n"
" Meuchlein\n"
" Oberfelden\n"
" Oberhegenau\n"
" Poppenbach\n"
" Unterfelden\n"
" Unterhegenau\n\n"
"91601: Dombühl\n"
" Baimhofen\n"
" Binsenweiler\n"
" Bortenberg\n"
" Dombühl\n"
" Höfen\n"
" Kloster Sulz\n"
" Ziegelhaus\n\n"
"91605: Gallmersgarten\n"
"Bergtshofen 91605\n"
" Gallmersgarten 91605\n"
" Mörlbach 91605\n"
" Steinach an der Ens 91605\n"
" Steinach bei Rothenburg ob der Tauber 91605\n\n"
"91607: Gebsattel\n"
"Bockenfeld\n"
" Eckartshof\n"
" Gebsattel\n"
" Kirnberg\n"
" Pleikartshof\n"
" Rödersdorf\n"
" Speierhof\n"
" Wildenhof\n\n"
"91608: Geslau\n"
" Aidenau\n"
" Dornhausen\n"
" Geslau\n"
" Gunzendorf\n"
" Hürbel\n"
" Kreuth\n"
" Lauterbach\n"
" Oberbreitenau\n"
" Oberndorf\n"
" Reinswinden\n"
" Schwabsroth\n"
" Steinach am Wald\n"
" Stettberg\n"
" Unterbreitenau\n\n"
"91610: Insingen\n"
" Insingen 91610\n"
" Leidenberg 91610\n"
" Leuzhof 91610\n"
" Lohr 91610\n"
" Lohrbach 91610\n\n"
"91613: Marktbergel\n"
"Ermetzhof 91613\n"
" Marktbergel 91613\n"
" Ottenhofen 91613\n\n"
"91616: Neusitz\n"
"Erlbach ob der Tauber\n"
" Horabach ob der Tauber\n"
" Neusitz\n"
" Schweinsdorf ob der Tauber\n"
" Södelbronn ob der Tauber\n"
" Wachsenberg ob der Tauber\n\n"
"91620: Ohrenbach\n"
" Gailshofen\n"
" Gumpelshofen\n"
" Habelsee\n"
" Oberscheckenbach\n"
" Ohrenbach\n"
" Reichardsroth\n\n"
"91628: Steinsfeld\n"
" Bettwar\n"
" Chausseehaus\n"
" Ellwingshofen\n"
" Endsee\n"
" Gattenhofen\n"
" Hartershofen\n"
" Reichelshofen\n"
" Steinsfeld\n"
" Urphershofen\n\n"
"91631: Wettringen\n"
"Grüb\n"
" Obergailnau\n"
" Reichenbach\n"
" Seemühle\n"
" Taubermühle\n"
" Untergailnau\n"
" Wettringen\n\n"
"91635: Windelsbach\n"
"Birkach\n"
" Burghausen\n"
" Cadolzhofen\n"
" Hornau\n"
" Linden bei Rothenburg ob der Tauber\n"
" Nordenberg bei Rothenburg ob der Tauber\n"
" Preuntsfelden\n"
" Windelsbach\n\n"
"91637: Wörnitz\n"
"Arzbach\n"
" Bastenau\n"
" Bottenweiler\n"
" Erzberg\n"
" Harlang\n"
" Mittelstetten\n"
" Oberwörnitz\n"
" Walkersdorf\n"
" Wörnitz\n\n"
"97215: Uffenheim\n"
"Brackenlohr\n"
" Custenlohr\n"
" Kleinharbach\n"
" Langensteinach\n"
" Rudolzhofen\n"
" Uffenheim\n"
" Uttenhofen\n"
" Wallmersbach\n"
" Welbhausen\n\n"
"97215: Weigenheim\n"
"Geckenheim 97215\n"
" Reusch bei Würzburg 97215\n"
" Weigenheim 97215\n\n"
"97215: Simmershofen\n"
" Adelhofen\n"
" Auernhofen\n"
" Equarhofen\n"
" Hohlach\n"
" Simmershofen\n"
" Walkershofen\n\n"
"97993: Creglingen\n"
" Archshofen\n"
" Blumweiler\n"
" Craintal\n"
" Creglingen\n"
" Erdbach\n"
" Finsterlohr\n"
" Frauental\n"
" Freudenbach\n"
" Lichtel\n"
" Lohrhof\n"
" Münster\n"
" Niederrimbach\n"
" Niedersteinach\n"
" Oberrimbach\n"
" Reinsbronn\n"
" Reutsachsen\n"
" Schirmbach\n"
" Schmerbach\n"
" Schön\n"
" Schonach\n"
" Schwarzenbronn\n"
" Sechselbach\n"
" Seldeneck\n"
" Waldmannshofen\n"
" Weidenhof\n"
" Weiler\n"
" Wolfsbuch\n\n"
"97996: Niederstetten\n"
"Adolzhausen\n"
" Dunzendorf\n"
" Ebertsbronn\n"
" Eichhof\n"
" Ermershausen\n"
" Hachtel\n"
" Heimberg\n"
" Herrenzimmern\n"
" Niederstetten\n"
" Oberstetten\n"
" Pfitzingen\n"
" Rinderfeld\n"
" Rüsselhausen\n"
" Sichertshausen\n"
" Streichental\n"
" Vorbachzimmern\n"
" Wermutshausen\n"
" Wildentierbach\n"
" Wolkersfelden\n")
subst = "\\t\\1"
result = regex.sub(subst, test_str)
if result:
print(result)
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Python, please visit: https://docs.python.org/3/library/re.html