Hell-O!
Preis?: 123:Bezeichnung?:Überraschungsei:Gewicht?:200g
Wie kann ich das in einzelne Zeilen aufsplitten?
Du möchtest also nur an Doppelpunkten splitten, vor denen kein Fragezeichen steht?
Es sollte nachher
Preis: 123
Bezeichnung: Überraschungsei
Gewicht: 200g
da stehen.
Dann solltest du es mal mit Look-behind versuchen:
my $string = 'Preis?: 123:Bezeichnung?:Überraschungsei:Gewicht?:200g';
# aufsplitten
my @matches = split(/(?<!\?):/, $string);
# Fragezeichen entfernen
map(s/\?//, @matches);
# Ausgabe
print "Content-type: Text/plain\n\n";
print join("\n", @matches);
Ergibt:
Preis: 123
Bezeichnung:Überraschungsei
Gewicht:200g
Siechfred