Hi, On Fri, 21 Feb 2003, Schalk, Werner wrote:
Ich habe eine .html-Datei, in der mehrfach u.a. folgende Zeichenkette auftaucht (in einer Zeile):
in einer Zeile, und sie sieht immer wie das Beispiel aus, ja?
Kategorie: 4.20 - 4.25<br>Beschreibung: <B>Kurzbeschreibung</B>Langbeschreibung<br>
So jetzt möchte ich gerne alle Werte für die Kategorienummern (hier: 4.20 - 4.25) und deren Kurz- und Langbeschreibung aus dieser Datei extrahieren.
Was heisst extrahieren? Willst du alle drei Dinge z.B. durch einen ':' getrennt ausgeben? Oder wie? Das hat wesentlichen Einfluss darauf, wie du es machen musst, und ob sed praktikabel ist. Ich nehme mal fuers Demonstrieren an, das du genau das mit Extrahieren meinst, dann geht's so: % cat bla.html Was anderes. <kjnsdc></cskjnkscjdc> Kategorie: 4.20 - 4.25<br>Beschreibung: <B>Kurz1</B>Langbesch re 1<br> Kategorie: 5.20 - 4.25<br>Beschreibung: <B>Kurz2</B>La ngbeschre 2<br> Kategorie: 6.20 - 3.25<br>Beschreibung: <B>Kurz3</B>Langb eschre 3<br> Kategorie: 7.20 - 4.25<br>Beschreibung: <B>Kurz4</B>Langbeschr e 4<br> Kategorie: 8.20 - 8.25<br>Beschreibung: <B>Kurz5</B>Lang beschre 5<br> <blubba> dingdong </trallala> % sed -ne 's@^Kategorie: \([^<]*\)<br>Beschreibung: <B>\([^<]*\)</B>\([^<]*\)<br>.*$@\1:\2:\3@p' < bla.html 4.20 - 4.25:Kurz1:Langbesch re 1 5.20 - 4.25:Kurz2:La ngbeschre 2 6.20 - 3.25:Kurz3:Langb eschre 3 7.20 - 4.25:Kurz4:Langbeschr e 4 8.20 - 8.25:Kurz5:Lang beschre 5 Das sed-Kommando oben gehoert in eine Zeile, ansonsten musst du an den richtigen Stellen quotes einfuegen. Ciao, Micha.