Thread Mit Perl CSV-Tabelle auslesen Werte verändern und zurück spielen (5 answers)
Opened by JohnB at 2019-02-12 18:23

Linuxer
 2019-02-12 21:13
#189769 #189769
User since
2006-01-27
3779 articles
HausmeisterIn

user image
Mit welchen Zeichen werden die Spalten getrennt?
Dann musst Du sicher sein, dass dieses Zeichen nicht innerhalb der ersten Spalte vorkommt.

Wenn das beides klar ist, dann könntest Du folgenden Ansatz probieren:


Der folgende Aufruf nimmt an, dass als Trennzeichen das Semikolon verwendet wurde und dass sich immer 5 unerwünschte Leerzeichen vor dem Semikolon befinden.

Per Regex werden dann diese Leerzeichen und ein Semikolon durch ein Semikolon ersetzt.
Pro Zeile passiert das genau einmal; also idealerweise bei Deiner ersten Spalte.

Code: (dl )
perl -p -E 's/\s{5};/;/' original.csv > modified.csv



Test
Code: (dl )
1
2
$ echo "123     ;foo" | perl -p -E 's/\s{5};/;/'
123;foo

Last edited: 2019-02-12 21:14:21 +0100 (CET)
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!

View full thread Mit Perl CSV-Tabelle auslesen Werte verändern und zurück spielen