Importieren von CSV in Libreoffice Calc mit „zwei Leerzeichen“ als Trennzeichen

Importieren von CSV in Libreoffice Calc mit „zwei Leerzeichen“ als Trennzeichen

Ich möchte einige Daten aus einer CSV-/Textdatei in Calc importieren.

In der ersten Spalte hätte ich gerne die 'Blindtext # i', und in der zweiten Spalte der numerische Wert.

In der Textdatei 'Blindtext # i' und der numerische Wert sind durch mehrere Leerzeichen getrennt. Daher würde ich dies wahrscheinlich erreichen, indem ich ' ' (zwei Leerzeichen) als Trennzeichen verwende und dann die Option „Trennzeichen zusammenführen“ ankreuze.

Ich weiß jedoch nicht, wie ich das machen soll. Ich habe versucht, „andere“ als benutzerdefinierten Wert zu verwenden.Separatoraber es scheint, als würde es jede beliebige Anzahl von Leerzeichen als nur ein einziges interpretieren.

Dies sind die ursprünglichen Daten, die ich kopiere und in die Tabelle einfüge.

Ursprüngliche Textdaten

Und das ist, was ich bekommen kann. Beachten Sie, dass durch das Deaktivieren der Option „Leerzeichen“ nur die rechts nachstehenden Leerzeichen berücksichtigt werden.

Wie Sie sehen, dient keines der folgenden Dinge. Das 'Blindtext # i' ist auf mehrere Spalten verteilt, da Libreoffice offenbar ein einzelnes Leerzeichen als Trennzeichen verwendet.

Bildbeschreibung hier eingeben

Der zweite (Trennzeichen zusammenführen)kommt näher, bekommt aber immer noch nicht das 'Blindtext # i' in der ersten Spalte.

Bildbeschreibung hier eingeben

Da @Zina es in einer anderen Version getestet hat, habe ich meine Libreoffice-Version (4.3.3.2) überprüft, bin jedoch skeptisch, ob dies die Grundursache ist, da es sich um einen ziemlich eklatanten Fehler zu handeln scheint.

Was mache ich falsch? Könnte es ein Versionsfehler sein? Vielen Dank im Voraus.

Antwort1

Ich habe es gerade auf einem CentOS 7 mit LibreCalc 4.3.7.2 versucht und es funktioniert. Sie müssen nur „Leerzeichen“ und „Trennzeichen zusammenführen“ auswählen. Ich habe eine Textdatei mit zufälligen Daten erstellt (die Zeilen hatten nicht einmal die gleiche Anzahl an Spalten), einige Daten waren durch 1 Leerzeichen getrennt, einige durch 2 oder sogar mehr. Ich konnte im Vorschaufenster sehen, wie sich die Daten beim Aktivieren/Deaktivieren von „Trennzeichen zusammenführen“ änderten. Sind Sie sicher, dass es Leerzeichen gibt? Und nicht einige Sonderzeichen, die nicht angezeigt werden?

Okay. Jetzt habe ich verstanden, was Sie erklärt haben. Ich denke, Sie können das gewünschte Verhalten nur erreichen, wenn Sie „Blindtext#??“ unter Anführungszeichen setzen und alle außer „Andere“ abwählen, wo Sie Ihre doppelten Leerzeichen einfügen und das Texttrennzeichen auf die verwendeten Anführungszeichen setzen müssen. Oder Sie müssen alle doppelten Leerzeichen z. B. durch ein Semikolon ersetzen, wie andere bereits vorgeschlagen haben.

Antwort2

In einem (skriptfähigen) zweistufigen Prozess könnten Sie sed verwenden, um einige Leerzeichen in einen Tabulator umzuwandeln und dann zu importieren. Ein Beispielskript:

#!/bin/bash
tmpcsv=$(mktemp)
inputcsv=$1
mv $inputcsv $tmpcsv
sed 's/  /\t/g' $tmpcsv > $inputcsv
scalc $inputcsv

verwandte Informationen