#!/usr/bin/perl use warnings; use strict; my $i = 0; my $split = '@@'; open IN, 'wuw_gesamt.txt' or die "ERROR!\n"; open OUT, '> Dateien/wuw0.txt' or die "ERROR!\n"; while () { #Die Zeile "Jahrgang, Seite" in "Jahrgang" und "Seite" trennen if (m/^Jahrgang, Seite\s*\[\s*(\d{4}),\s+(\d+)\s\]\s*$/){ print OUT "Jahrgang [ $1 ]\nSeite [ $2 ]\n"; } #Die Zeile "Datum/Aktenz." in "Datum" und "Aktenzeichen" trennen elsif (m/^Datum.Aktenz.\s*\[\s*(\d*).(\d*).(\d{4})\s(.*)/){ print OUT "Tag [ $1 ]\nMonat [ $2 ]\nJahr [ $3 ]\nAktenzeichen [$4 \n"; } #Die Zeile "Abteilung" in "Abteilung" und "Abteilungsnummer" trennen elsif (m/^Abteilung\s*\[\s*(.*)\s(\d*)\s\]\s(.*)$/){ print OUT "Abteilung [ $1 ]\nAbteilungsnummer [ $2 ] \n"; } #Zeilen, die nicht getrennt werden wie bisher ausgeben else{ print OUT $_; } #An der Stelle "@@" die einzelnen Einträge trennen if (/^(.*?)$split(.*)$/){ close OUT; $i++; open OUT, '> Dateien/wuw' . $i . '.txt' or die "ERROR!\n"; print OUT $2; } } close IN; print "\n$i Dateien wurden erfolgreich erstellt.\n";