preg_match

deinertsche

Erfahrenes Mitglied
Hi!
Bei meinem letzten Posting bekam ich leider keine antwort, deswegen versuch ichs nochmal:

Also... ich habe einen String (ne eingelese html datei) und möchte da alle textstellen raushaben die zwischen <!--ll--> und e=ll liegen.

$string="<hr><!--ll--><a href=irgendwas.php?task=view&ID=58&e=ll class=navi1>hallo</a><br><div class=navi1>test</div><!--ll--><a href="bla.php?task=nix&ID=58&e=ll" class=navi1>";

Ich hatte mir das irgendwie so vorgestellt:

preg_match(("/(<!--ll-->)(.*)(e\=ll)/",$string,$liste);
for ($i=0;$i<count($liste)+1;$i++) echo $liste[$i]."<br>";

...aber leider klappt das nicht.
Hab mir http://www.dclp-faq.de/q-regexp-links-finden.html angesehen aber nix kapiert! ;-(

thx
 
Also, folgendes Script entfernt zwischen jedem <!--ll--> und e=ll das, was dazwischensteht.

PHP:
<?

$text = '<hr>testetst<!--ll--><a href=irgendwas.php?task=view&ID=58&e=ll class=navi1>hallo</a><hr>jhios'; 

$pattern = '=(<!--ll-->)(.*)(e\=ll)=sUi';
$replace = '';

$text = preg_replace($pattern, $replace, $text);

echo $text;

?>

Schreib' aber lieber mal genauer, was Du überhaupt machen willst - ist sicher nich in Deinem Sinn, dass Du da nachher zerstückelten HTML-Code auf'm Bildschirm stehen hast.
Willst alle Links der Form bla.php?...&e=ll aus dem Text haben?

//edit: Beim $pattern macht das Forum wohl irgendwie 'n Leerzeichen vor die erste geschlossene Klammer. Gehört da nich hin.
 
Zuletzt bearbeitet:
Danke, ich werds morgen auf der Arbeit mal ausprobieren.
Nein, ich will die links nicht ganz entfernen sondern alle dynamischen php-seiten (die aus ner Datenbank geholt werden) in statische html-dateien umwandeln, aber dazu muss ich halt auch alle links ändern die in den dateien vorkommen.

mfg
Deinertsche

ps: Findest Du das Space wirkklich sooo gut? (wegen Deinem Pic) Ich finds viel zu teuer!
 
Es funktioniert! Es funktioniert! Ich weiss zwar nich wieso aber es funktioniert! Ich hab einfach ein ? hinter das (.* geschrieben und jetzt funktionierts. Hab aber nich so ganz kapiert was das ? bedeutet.
 
Original geschrieben von deinertsche
Hab aber nich so ganz kapiert was das ? bedeutet.

Eigentlich ist das Fragezeichen nur ein Kürzel für {0,1}, d.h. das der vorhergehende Ausdruck höchstens einmal vorkommen darf. Das Sternchen ist ein ähnliches Kürzel, steht für {0,}, d.h. keine oder mehr Wiederholungen des Ausdrucks.

//edit:
ps: Findest Du das Space wirkklich sooo gut? (wegen Deinem Pic) Ich finds viel zu teuer!

Teuer stimmt schon, aber das ist es ja generell auf der Insel/den Clubs dort. Andererseits hat der Club/die Parties da (v.a. We love...) 'ne ganz andere Qualität, als die meisten Läden/Parties hier.
 
Zuletzt bearbeitet:
Zurück