Christian Boltz wrote:
Hallo Boris, hallo Leute,
Am Donnerstag, 3. November 2005 14:05 schrieb Boris Höffgen:
Bodo Kaelberer schrieb:
Die Zahlen werden nach der Kommastelle abgeschnitten, z.B. aus 2,45 wird 2.00 und das ist eben nicht gefragt. Ich nutze direkt den MySQL-Client auf der Konsole und nicht Perl oder PHP.
Trennst Du mit , oder ;? Sind die Zahlen in Anführungszeichen?
Eine Zeile im File sieht etwa so aus: "2345","Das ist ein Text","2,45","bla"
Für Ersetzungen in Textdatei schlage ich üblicherweise sed vor - so auch, um das Komma bei "2,45" durch einen Punkt zu ersetzen - aber in diesem Fall (Komma auch als Feldtrenner) dürfte die RegEx reichlich kompliziert ausfallen. Naja, sei's drum, ungetestet: sed 's/^("[^"]*","[^"]*","[^"]*).([^"]*","[^"]*")/\1.\2/'
Stimmt, mit sed müsste es klappen. Das Obige funktioniert leider nicht, aber ich suche nach dem Fehler.
Die einfachere Lösung ist wohl, die Datei in OpenOffice aufzumachen (CSV-Import) und per "alle ersetzen" die Kommas durch Punkte zu ersetzen.
Hatte ich versucht, nur ist das File zu groß. Sind ca. 1E6 Einträge. Gruß Boris