Grep-Trick 1: Whrungsangaben
Mit Grep kann man sich viel Zeit und monotone Handarbeit ersparen, wenn man die knifflige Syntax durchschaut. Es ist möglich, Währungsangaben in einem Rutsch den Vorgaben entsprechend anzupassen.
(msc) Ein Beispiel: Sie haben einen Text erhalten, in dem alle Währungsangaben mit einem vorangestellten CHF ausgedrückt sind. «Rentner zahlen CHF 15.40, Erwachsene CHF 18, Jugendliche CHF 10.–, Kinder CHF 5 und Hunde CHF –.50. Depot CHF 1000.05. Kaufpreis CHF 1 000 000.»
Nun gibt es für Ihre Publikation die Regel, dass Währungsangaben in Fliesstexten der Ästhetik halber ausgeschrieben werden. Die manuelle Korrektur – das vorangestellte «CHF» durch ein nachgestelltes «Franken» zu ersetzen – ist eine mühsame Angelegenheit. Bei der Arbeit mit Grep stellt sich andererseits das Problem, dass manchmal Rappenbeträge vorhanden sind, manchmal nicht und die Angabe «0 Franken» vor einem Rappenbetrag weggelassen werden darf. Andererseits werden ganze Frankenbeträge manchmal mit Auslassungszeichen für die Rappen, manchmal ohne dargestellt (also «CHF 10.–» oder «CHF 5»). Und als ob das nicht genug wäre: Bei grossen Beträgen kommen als (optionale) Zifferngruppierungszeichen der Apostroph, das Hochkomma oder das Viertelgeviert zum Einsatz. Der folgende Grep-Ausdruck fängt alle diese Eventualitäten ab:
CHF ([0-9’'~4~=]*\.?[0-9’~4~=]*)
Diesen Term tragen Sie im Suchen/Ersetzen-Dialog in der Rubrik Grep bei Suchen nach ein (alles auf eine Zeile). Bei Ändern in ist die Sache einfach. Verwenden Sie hier die Angabe: $1 Franken
Wenn Sie nun auf Alle ändern klicken, erhalten Sie das gewünschte Resultat: «Rentner zahlen 15.40 Franken, Erwachsene 18 Franken, Jugendliche 10.– Franken, Kinder 5 Franken und Hunde –.50 Franken. Depot 1000.05 Franken. Kaufpreis 1 000 000 Franken.
Selbstverständlich lässt sich dieses Beispiel für andere Währungen und Darstellungen anpassen, indem Sie in den Termen für Suchen/Ersetzen einfach anstelle von CHF bzw. Franken die entsprechende Angabe machen. Ein Problem sind Punkte, die als Satzzeichen direkt an eine Währungsangabe anschliessen – die kann man per Grep u.U. nicht vom Dezimaltrennzeichen unterscheiden.