* Sven Gehr <sven@dreampixel.de> [050906 09:56]: > Ich muß eine Nummer aus folgendem String extrahieren: > > .... > 381 470 M (@# )[92 50 25 0]xS > 573 470 M (0621/48293-91)[50 50 50 50 28 50 50 50 50 50 33 50 0]xS > 1184 470 M ( #@)[25 50 0]xS > .... > Die Nummer die ich daraus brauche ist die 0621/48293-91. [...] > > In Worte formuliert würde es lauten: > > Nimm alle Zeichen zwischen (@# ) und ( #@). Suche innerhalb dieses ^ Das da ist kein normales Space-Zeichen sondern ein "Hard Space" (0xa0). Soll das wirklich so sein, oder ist das ein Lapsus deines Editors? > Teilstrings nach einer Klammer (......). Der Inhalt in dieser Klammer > ist die gesuchte Nummer im Rohformat die ich mit den sed Befehlen aus > dem ersten Beispiel wieder aufbereiten kann. Ich habe das erste Beispiel zwar nicht verfolgt, aber ich würde das Problem in etwa so lösen: sed '/(@# )/,/( #@)/s/.*(\([-/0-9]*\)).*/\1/;t;d' file Dabei habe ich angenommen, dass der Hard Space in Wirklichkeit ein normales Space darstellen soll und dass die gesuchten Nummern nur Zahlen und die Zeichen "/" und "-" enthalten dürfen. Beste Grüße - Jürgen -- GPG A997BA7A | 87FC DA31 5F00 C885 0DC3 E28F BD0D 4B33 A997 BA7A
Attachment:
signature.asc
Description: Digital signature