Schrift
[thread]12096[/thread]

Grundlegende Frage zu Regulären Ausdrücken (HTML ausfiltern) (Seite 2)



<< |< 1 2 3 >| >> 24 Einträge, 3 Seiten
FIFO
 2008-06-29 15:13
#111648 #111648
User since
2005-06-01
469 Artikel
BenutzerIn

user image
Roper+2008-06-29 00:28:39--
Da ich die HTML Seiten um die es geht alle selber geschrieben habe, kann ich sehr sicher sein, dass absolut keine außergewöhnlichen Konstruktionen enthalten sind, sondern nur normales HTML.

Jaja, dieses Stadium haben wahrscheinleich alle mal durchgemacht ;-)

Normales HTML ist schon schwierig genug zu parsen ;-) Wenn Du meinst, dass in Deiner Datei die spitzen Klammern ausschließlich für das Kennzeichnen von HTML-Tags dienen und innerhalb der < > auch nur Wegwerfinformation steht, dann geht es natürlich mit RegEx (vgl. esskar):

Code (perl): (dl )
1
2
# Für eine Zeile:
$line =~ s/<.*?>//g;


Das '?' hinter dem Quantifier '*' bewirkt, dass nur bis zum ersten '>' gesucht wird, sonst wird nämlich alles vom ersten '<' bis zum letzten '>' gematcht ('gieriges' Verhalten). Der Modifier 'g' (global) führt zum Ersetzen aller Tags in $line, ansonsten wird nur der erste Treffer entfernt.
Schau Dir mal perlrequick und perlretut an ...
Everyone knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it? -- Brian Kernighan: "The Elements of Programming Style"
Roper
 2008-06-29 15:55
#111650 #111650
User since
2008-06-28
3 Artikel
BenutzerIn
[default_avatar]
Ok vielen dank für die Infos.

Die Möglichkeit explizit nur bis zu einem bestimmten Zeichen zu suchen funktioniert also nur so? Einen direkten Befehl gibt es nicht?
FIFO
 2008-06-29 20:58
#111665 #111665
User since
2005-06-01
469 Artikel
BenutzerIn

user image
Roper+2008-06-29 13:55:46--
Die Möglichkeit explizit nur bis zu einem bestimmten Zeichen zu suchen funktioniert also nur so? Einen direkten Befehl gibt es nicht?

Versteh ich nicht ganz. Was heißt 'explizit nur bis zu einem bestimmten Zeichen'? Das, was Du in deinem ersten Posting als Aufgabe angegeben hast, wird doch erfüllt?
Everyone knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it? -- Brian Kernighan: "The Elements of Programming Style"
KurtZ
 2008-06-29 21:15
#111666 #111666
User since
2007-12-13
411 Artikel
BenutzerIn
[default_avatar]
Roper+2008-06-29 13:55:46--
Die Möglichkeit explizit nur bis zu einem bestimmten Zeichen zu suchen funktioniert also nur so? Einen direkten Befehl gibt es nicht?


es gibt mehrere Möglichkeiten, da RegEx sehr mächtig sind, aber dass ist die gängigste.
Ansonsten kannst du auch das längste nichtvorkommen von > suchen [^>]*.

Was verstehst du unter einem direkten Befehl? Gib mal ein Beispiel...

Also ich sag mal anhand der Fragen die du stellst solltest du wirklich ernsthaft in Erwägung ziehen ein fertiges Modul zum HTML-Parsen zu nehmen, statt selbst rumzufummeln.
TMTOWTDYOG (there's more than one way to dig your own grave)
KurtZ
 2008-06-29 21:18
#111667 #111667
User since
2007-12-13
411 Artikel
BenutzerIn
[default_avatar]
Gast+2008-06-28 18:15:42--
Code: (dl )
Beachten sie, dass immer gilt a<b <u>aber nicht</u> c>d! 


Murks!!!
TMTOWTDYOG (there's more than one way to dig your own grave)
esskar
 2008-06-30 01:51
#111669 #111669
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
Gast+2008-06-28 18:15:42--
oder:
Code: (dl )
Beachten sie, dass immer gilt a<b <u>aber nicht</u> c>d! 


sowas sollte man auch nicht als valide betrachten
Gast Gast
 2008-06-30 14:34
#111689 #111689
Wer schreibt denn heute valides HTML?
Nur Könner.

Wieso will er keinen richtigen Parser nehmen? Rätselhaft.

Das Argument, die Webseiten selbst gemacht zu haben, verhindert nicht, dass Regexe meist, aber nicht immer klappen.

Aber egal. Dann parse halt mit Regexes. Dann lernste, dass es ab und an sehr schwierig wird.
Niemand wird hier zu einfachen Lösungen gezwungen. ;)

Kannst aber auch mit indexund substrarbeiten.

Da kannst auch einen Zerschnippler für HTML schreiben.



//EDIT: Die Drachin war mal wieder nicht angenmeldet. :(
moritz
 2008-06-30 14:46
#111690 #111690
User since
2007-05-11
923 Artikel
HausmeisterIn
[Homepage]
user image
Gast+2008-06-30 12:34:08--
Wer schreibt denn heute valides HTML?
Nur Könner.


Was ist das denn für eine Einstellung?

Erst mal ist HTML eine Spezifikation. Wer sich nicht daran hält, darf sein Ergebnis eigentlich nicht mal "HTML" nennen, der Zusatz "valide" ist also überflüssig.

Wer beliebiges Zeugs schreibt, das einem bestehenden Format ähnlich ist, und dann erwartet, dass irgend wer ausser der Autor damit was anfangen kann, kann genauso gut an den Weihnachtsmann glauben.

Nur weil ein gewisses Programm, dass häufig wider besseren Wissens als "Browser" bezeichnet wird, in jedem Stück Scheiss HTML reininterpretiert, heisst das nicht, dass man sich nicht an Standards halten soll.

Übrigens dürfen sich die Autoren, die ihre Webseiten für besagtes Stück Software optimiert haben, so langsam richtig in den Arsch beissen, weil Version 7 und 8 inkompatibel sind, und sie die ganze Arbeit nochmal machen dürfen. Wieso habe ich nur kein Mitleid mit denen?
KurtZ
 2008-06-30 14:55
#111691 #111691
User since
2007-12-13
411 Artikel
BenutzerIn
[default_avatar]
Gast+2008-06-30 12:34:08--
Wer schreibt denn heute valides HTML?
Nur Könner.


nicht valides HTML ist für dieses Beispiel ziemlich geschmeichelt, das hier ist schlicht Murks, da gehören &gt; und &lt; Entities hin, das begreifen nicht nur Könner.
TMTOWTDYOG (there's more than one way to dig your own grave)
GwenDragon
 2008-06-30 18:12
#111703 #111703
User since
2005-01-17
14837 Artikel
Admin1
[Homepage]
user image
Aua, ich bin eine Volldeppin. Ich habe valide gesagt. Pui!!!! Ich muss es doch besser wissen.

HTML ist Markup.
Was valide ist und nicht, hängt vom Standard ab. HTML 3 ist nicht HTML 4 und HTML 5 schon ganz anners.

Ich muss jetzt lachen.
Ich schreibe z. B. validen HTML-Code, weil ich Pfusch hasse. Aber das ist eine Einstellung, die heute nicht mehr besonders zählt.

Es gibt hier Leute, die schwören auf Browser, die schlechtes HTML gut anzeigen und dann wird über valides Markup geredet?
Browser, die invalides Markup und JavaScript in valides uminterpretieren wie FF oder IE machen jedem üblen Skriptkiddie und anderen Bubies die Türen auf.

Die 10% Leute, die Standards befolgen, machen den Brei nicht fett. Selbst Agenturen produzieren argen HTML-Müll nebenst sinnloser CMS-Orgien.
Und solange Browser nicht strikt XHTML konform arbeiten und auch Word-HTML anzeigen wollen, brauchen wir nicht zu reden.
Erst wenn XHTML-Standard wird, hört der Müll auf. Denn ein XHTML-Browser darf invaliden Code nicht zeigen, soweit ich weiß.
<< |< 1 2 3 >| >> 24 Einträge, 3 Seiten



View all threads created 2008-06-28 18:21.