Cheatah: HTML Tags ausschneiden

Beitrag lesen

Hi,

tr /<[a-zA-Z0-9äöüß]>//
oder (Shell)
tr -d '<[a-zA-Z0-9äöüß]'
löscht aber den kompletten Text, nicht nur die Tags.

warum da überhaupt was gelöscht wird ist mir schleierhaft - augenscheinlich reagiert die Shell doch anders als Perl :-)

Also, Du willst suchen und ersetzen, also "s///g" (g für global, also mehrmals). Du willst durch nichts ersetzen, das vereinfacht den zweiten Teil ;-) Nun willst Du aber HTML-Tags löschen. Ich versuche es mal:

s/<[^<]+?>//g;

Hier wird folgendes gematched: "<", gefolgt von "mindestens einem Zeichen aus der Menge aller Zeichen ohne '<'", durch das Fragezeichen wird noch einmal die "Gier" aus der RegExp genommen. Am Ende folgt noch ein ">".

Das Problem hierbei ist, daß z.B. <img alt="<text>"> nicht mehr vollständig gematched wird, aber mit einer einfachen RegExp kriegst Du das nicht hin.

Hope it helps :-)

Cheatah