Zum Inhalt springen

[PHP] ereg_replace mit Variablem Zwischenraum


Empfohlene Beiträge

Hallo,

ich muss aus einem HTML-Text (in dem viele HTML-Kommentare sind) per php alle HTML-Kommentare (inkl. Tags) löschen.

BLA BLA BLA <!--Kommentar--> Weiterer Text...

Wie lautet der Reguläre Ausdruck für ereg_replace?

Anfang und Ende sind ja beim Tag immer gleich, nur der Zwischenraum ist variabel...

Thx

Oneside

Link zu diesem Kommentar
Auf anderen Seiten teilen

Als "Platzhalter" muss hier die Folge (.+?) dienen: Der . als "beliebiges Zeichen" + für ein oder mehr Vorkommen dieses Zeichens (alternativ * wenn da auch gar kein Zeichen kommt) und ? für minimales Matching. Letzteres ist erforderlich, da ja mehrere Kommentarfolgen vorkommen, und nur genau diese und nicht der richtige Text zwischen zwei Kommentaren erschlagen wird.

Vollständig: /<!--(.+?)-->/

@Carnie: Dein Ausdruck würde allenfalls Kommentare aus beliebig vielen Minuszeichen erschlagen;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also wenn ich folgendes ausführe:

$var = ereg_replace("/<!--(.+?)-->/","",$var);

dann ist der gesamte Text aus $var weg und nicht nur die Kommentare:

Also wenn $var folgenden Inhalt hat:

"Dies ist ein Text der viel aussagen kann <!--Kommentar zu diesem Text-->"

Dann bleibt nach dem preg_replace nix mehr übrig :-(

???

Link zu diesem Kommentar
Auf anderen Seiten teilen

???
Äääähmjaaaa... wird vermutlich daran liegen, dass ich nur mit perl-kompatiblen ("Standard"!) RegExen agiere. ereg_replace scheint da nach einem oberflächlichen Blick ins Manual etwas anders zu ticken...

Einen Versuch hab ich aber noch...

ereg_replace

Tipp: Die Funktion preg_replace(), die eine zu Perl kompatible Syntax regulärer Ausdrücke verwendet, ist häufig die schnellere Alternative zu ereg_replace().
Ich hoffe mal, beim Aufruf bist du nicht auf ereg_replace eingeschränkt.;)
Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...