AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

[RegEx] HTML Tags ohne Endtag

Ein Thema von faux · begonnen am 10. Sep 2006 · letzter Beitrag vom 10. Sep 2006
Antwort Antwort
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#1

[RegEx] HTML Tags ohne Endtag

  Alt 10. Sep 2006, 13:18
Hallo!

Ich hab schon wieder mal ne RegEx-Frage. Ich hab mir eine RegEx gebastelt, mit der ich HTML-Tags erkenne, die sowohl ein Anfangstag auch ein Eindtag haben:
Code:
<([A-Z][A-Z0-9]*+) ?[^>\n]*>(.*?)</\1>
Jetzt würde ich aber eigentlich das umgekehrte brauchen, also ein Anfangstag, aber kein Endtag.
Ich bekomme das nicht hin.
Habs auch schon mit Negativelookahead auf </\1> probiert, geht aber leider nicht.

Könnte mir mal jemand etwas helfen.

Grüße
Faux
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Olli
(Gast)

n/a Beiträge
 
#2

Re: [RegEx] HTML Tags ohne Endtag

  Alt 10. Sep 2006, 13:53
Ich halte das nicht für machbar, weil die Tags ja beliebig tief geschachtelt sein können. Auch könntest du fälschlicherweise sowas nicht matchen:

Code:
<pre>ckbnwecdejkb[i]xjklwndqj</pre>[/i]
weil dort ja ein Endtag existiert, es ist zwar falsch geschachtelt, aber so komplexe Ausdrücke dürftest du nicht in eine Regex packen können ... mußt du wohl oder übel noch drumherum was scripten um die Tag-Verschachtelungsebenen aufzuspüren und zu testen ...
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: [RegEx] HTML Tags ohne Endtag

  Alt 10. Sep 2006, 13:55
Hallo faux,

das wird wohl mit einem einfachen regulären Ausdruck nicht gehen. Tags können ja auch verschachtel sein...

Code:
 <div>
   <div>
 </div>
Was willst du eigentlich genau machen?

Gruss
Thorsten
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: [RegEx] HTML Tags ohne Endtag

  Alt 10. Sep 2006, 15:09
Zitat von omata:
Was willst du eigentlich genau machen?
Ich habe in einem phpBB Forum im Profil ein Feld mit benutzerdefiniertem Text gemacht, wo jeder über sich selbst schreiben kann. Da das ganze aber ziemlich lang werden kann, habe ich eine Funktion zum Ein- und Ausklappen gemacht. Wenn jetzt jedoch ein BBCode-Tag über die Einklappstelle (die ca. bei Zeichen 1000 liegt) hinausgeht, hat das zur Folge, dass dann der Folgetext ev. Fehler enthalten könnte, da es eben kein Endtag gibt.

Bsp: Das ist ein Text mit einem BBCode, [b]welches abgeschnitten[/b] wird.
Der kursive Text ist dann abgeschnitten und es gibt kein [/b] Tag.

Naja, dann werde ich in der "Vorschau" (also im eingeklappten Zustand) alle BBCode deaktivieren.

Danke euch.

Grüße
Faux
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz