Erkennung von HTML-Code

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Milan
User
Beiträge: 1078
Registriert: Mittwoch 16. Oktober 2002, 20:52

Erkennung von HTML-Code

Beitragvon Milan » Samstag 25. Januar 2003, 20:08

Hi, ich hab mal wieder eine Frage: Gibt es ein Modul, mit dem ich schnell und einfach erkenne, ob ein String HTML-Code beinhaltet? Wenn ja soll dieser nach Möglichkeit dann nämlich in UBB-Code umgeformt werden, bzw. wenn das nicht möglich ist, soll man das an irgendeinem Rückgabewert erkennen können. Dasselbe Problem hab ich dann auch Rückwärts, aber das ist erstmal egal.
Mir geht es ersteinmal nur um die Erkennung, ob Code in einem String enthalten ist und wenn möglicher welcher Art (transformierbar oder nicht). Mit dem Rest komm ich selber zurecht, was natürlich nicht heißt, das weitere Hilfe verboten ist :wink: :D.
piddon
Gründer
Beiträge: 410
Registriert: Dienstag 30. Juli 2002, 18:03
Wohnort: Oestrich-Winkel
Kontaktdaten:

Beitragvon piddon » Sonntag 26. Januar 2003, 10:18

Benutze doch einen regulären Ausdruck. Suche nach "<" gefolgt von irgentwas mit ">" und natürlich auch ein "</" gefoiolgt von irgentwas und einem ">" ;)

Frag mich bitte nicht wie das geht, RegExe sind nicht meine Stärke, aber das was du machen willst schreit irgentwie danach.
irc: #python.de @ irc.freenode.net | python-wiki | python-forum FAQ
Milan
User
Beiträge: 1078
Registriert: Mittwoch 16. Oktober 2002, 20:52

Beitragvon Milan » Sonntag 26. Januar 2003, 11:00

hmm. hab ich mir auch schon gedacht, aber dann weiß ich nicht, ob sich der Code "transformieren" lassen würde, was ich sehr wichtig fände.
ASCII158
User
Beiträge: 80
Registriert: Samstag 28. September 2002, 15:40
Wohnort: München
Kontaktdaten:

Beitragvon ASCII158 » Sonntag 26. Januar 2003, 11:32

mfg,

10011110
XT@ngel
User
Beiträge: 256
Registriert: Dienstag 6. August 2002, 14:36
Kontaktdaten:

Beitragvon XT@ngel » Sonntag 26. Januar 2003, 11:42

Meinst du in etwa sowas hier

Code: Alles auswählen

import re
pattern = r"<a href=\"([^\\[]*)\">([^<\[]*)</a>"
str = "Das bitte in <a href=\"test.py\">Link</a> umwandeln"
reg = re.compile(pattern)
st = reg.sub("[url=\\1]\\2[/url]", str)
print st
Milan
User
Beiträge: 1078
Registriert: Mittwoch 16. Oktober 2002, 20:52

Beitragvon Milan » Sonntag 26. Januar 2003, 11:52

:D ganau so was. Ich verstehe zwar re's, aber das ist mir ein wenig deftig. kannst du mir das bitte mal erklären? :?:
XT@ngel
User
Beiträge: 256
Registriert: Dienstag 6. August 2002, 14:36
Kontaktdaten:

Beitragvon XT@ngel » Sonntag 26. Januar 2003, 12:25

Als erstes wird das modul re eingebunden (reguläre Ausdrücke)
http://www.python.org/doc/current/lib/module-re.html

pattern enthält das Suchmuster das gesucht werden soll.
http://www.python.org/doc/current/lib/re-syntax.html
http://selfhtml.teamone.de/cgiperl/sprache/regexpr.htm

re.compile() übersetzt den textuellen regulären Ausdruck in einen übersetzten regulären Ausdruck
(Frag mich nicht was das bedeutet ;-))

sub() sucht, ersetzt und gibt einen neuen String zurück

Mfg
Andreas
stevg

einfache lösung

Beitragvon stevg » Samstag 8. Februar 2003, 18:23

wenn du nur html verbieten willst, brauchst du einfach nur das < durch
& l t ; erstetzen, dann erkennt der browser den tag nicht mehr.

Wer ist online?

Mitglieder in diesem Forum: Dembrix, Tim_12