rumbalotte
Lieutenant
- Registriert
- Okt. 2010
- Beiträge
- 671
Hi,
ich habe eine CSV, welche ich verarbeiten möchte (muss
)
Problem bei dieser: es gibt Datensätze, in denen einer oder mehrere Umbrüche sind (betroffene Zellen sind zum Glück mit " als Texttrenner):
Somit kann ich die Datei nicht wirklich Zeilenweise verarbeiten.
Wenn ich die Datei als kompletten String einlese und dann loslege, kann mit diesem Code die Zeilenumbrüche zwischen "" entfernen:
Nun die aufregende Frage: ist das direkt via RegEx möglich, also ohne die sub "dropnl" aufzurufen?
Danke für alle Inspirationen!
Die Lotte
ich habe eine CSV, welche ich verarbeiten möchte (muss
Problem bei dieser: es gibt Datensätze, in denen einer oder mehrere Umbrüche sind (betroffene Zellen sind zum Glück mit " als Texttrenner):
Code:
asd;fdas;qwe;asdf;"bla
blubb
foo
bar
";sdgf;asdf;asdf
Somit kann ich die Datei nicht wirklich Zeilenweise verarbeiten.
Wenn ich die Datei als kompletten String einlese und dann loslege, kann mit diesem Code die Zeilenumbrüche zwischen "" entfernen:
Code:
$input =~ s/;"(.*?)";/;"@{[dropnl($1)]}";/gs;
sub dropnl{
my $stuff = shift;
$stuff =~ s/\n//g;
return $stuff;
}
Nun die aufregende Frage: ist das direkt via RegEx möglich, also ohne die sub "dropnl" aufzurufen?
Code:
$input =~ s/;"(.*?)";/;"<$1 ohne Umbrüche>";/gs;
Danke für alle Inspirationen!
Die Lotte