Hallo flopau,
ich verstehe Deine Verzweiflung gut.
Nachstehend noch eine Demo, welche zeigt, weshalb das Austauschen der Preise nicht zuverlässig gemacht werden kann.
Eine Textbox ist in ein neues Dokument kopiert worden. Im angehängten Screenshot sind die Texte zum Teil unkenntlich gemacht.
Das folgende Script geht durch die Absätze und prüft mithilfe der Satimage.osax, ob das definierte Suchmuster "([0-9]{1,4})(,)([0-9]{2})$" enthalten ist.
Jedes Mal wird der Variable "oldPrice' das aktuelle Ergebnis zugewiesen. Zum Beispiel: --> {matchPos:39, matchLen:4, matchResult:"0,89"}. Die Position (39), die Länge (4 Zeichen) und der Text "0,89").
Normalerweise würde es genügen, letzteren zu benutzen, um in der Excel-Datei nach dem neuen Preis zu fahnden. Aber weil es ein Problem-Text ist, wird mit einer zusätzlichen Zeile geprüft, was sich an der erhaltenen Position befindet.
Das Ergebnis wird an die Liste 'oldPriceList' gehängt. Die Zeichen "|" dienen zum Abgrenzen.
Das Ergebnis ...
... enhält sechs korrekte Werte. Aber beim ursprünglichen "0,89" fehlt die Null. Dafür ist der Return erfasst worden.
So geht es natürlich nicht.
Gruss, Hans