AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Reguläre Ausdrücke: u.a. "Gleiches" ausdrücken
Thema durchsuchen
Ansicht
Themen-Optionen

Reguläre Ausdrücke: u.a. "Gleiches" ausdrücken

Ein Thema von Matze · begonnen am 8. Sep 2006 · letzter Beitrag vom 8. Sep 2006
 
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#1

Reguläre Ausdrücke: u.a. "Gleiches" ausdrücken

  Alt 8. Sep 2006, 11:51
Hi,

Es geht um reguläre Ausdrücke mit PHP, doch ich denke, dass müsste ja überall ähnlich sein. Ich möchte mittels regulärem Ausdruck BBCodes aus einem Text entfernen. Die BBCodes können so aufgebaut sein
  • [x]...[/x]
  • [x=...]...[/x]
  • [x="..."]...[/x]

Mit diesem regulären Ausdruck (besser habe ich es nicht hinbekommen ) wollte ich diese BBCodes entfernen:

Code:
$text = preg_replace("/\[(.*?)\](.*?)\[\/(.*?)\]/", '\\2', $text);
Man sieht gleich, dass diese Lösung sehr schlecht ist. Ich sehe 2 Nachteile darin:
  1. Wenn beim ersten (.*?) etwas anderes steht, als beim 2., dann würde das mit ersetzt werden. Solche verschachtelungen würden also nicht korrekt behandelt werden:

    Code:
    [b][i]Hallo[/i][/b]
    Ok, hierbei ginge es zufälligerweise, doch wird eben das [ b ] mit dem [ /i ] abgearbeitet und danach das [ i ] mit dem [ /b ]. Kann man überhaut so eine Gleichheit mit regulären Ausdrücken behandeln?
  2. Ich erhalte hinterher 3 Variablen (\\1, \\2 und \\3), aber ich benötige nur \\2. Man kann Parameter irgendwie vom Ergebnis "ausschließen", soweit ich mich erinnere, doch weiß ich nicht wie.

Optional müsste ich auch dieser [x=...] bzw. das [x="..."] behandeln.
Kennt sich da von euch jemand aus und kann mir da ein wenig helfen?
  Mit Zitat antworten Zitat
 


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 07:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz