Ich verwende ExamDiff, um zwei * .csv-Dateien zu vergleichen, die keine Leerzeichen nach Kommas haben. Zahlen in den Dateien enthalten zwischen 2 und 8 Dezimalstellen, aber ich möchte nur die ersten 3 Stellen nach der Dezimalzahl auswerten - alles über den tausendsten Platz hinaus ist unbedeutend.
ExamDiff können Sie Regex zu Ignorieren bestimmte Teile von Zeilen, damit ich verwende: (\d{1,4}\.)
, um die Nummer Zeichenfolge zu identifizieren (aber auch ignorieren, die in diesen Fällen OK ist).
Hier ist eine Beispielzeile aus der csv:Wie werte ich nur die Nachkommastellen einer Zahl aus?
VQ000009, B2, B3, VV, 12.0000,0.23,1.0000,1.0000000000,1357.421
Und hier ist die vergleichbare Linie in der neuen CSV:
VQ000009, B2, B3, VV, 12.0000,0.27,1.0009,1.0000000000,1357.431
Also, in diesem EXA mple die 0,23 und 0,27 moniert die 1,0000 und 1,0009 würde nicht Flagge und die 1357,421 und 1357,431 moniert
Können Sie weitere Beispiele nennen? Nicht klar, was Sie erreichen wollen. Welche 2-3 Ziffern möchten Sie ignorieren? –
@RajeevRanjan mit einem anderen Beispiel bearbeitet. – Sam
'\ d {1,4} \. \ D {3}' - dieses Muster sollte helfen. Es würde nur 3 Nachkommastellen erfassen, wobei keine Nichtübereinstimmung erlaubt ist. –