Scholieren.com forum

Scholieren.com forum (https://forum.scholieren.com/index.php)
-   Software & Hardware (https://forum.scholieren.com/forumdisplay.php?f=20)
-   -   [PHP] Regexp (https://forum.scholieren.com/showthread.php?t=1412257)

Triloxigen 18-05-2006 09:35

[PHP] Regexp
 
Ik krijg iets met regexp niet echt voor elkaar terwijlk het toch simpel is :|

$getlink['tions'] = "map/bestand.html";

$content = "<a href=\"{GETLINK:tions}\">Opties</a>";

$content = eregi_replace("{GETLINK:*}", $getlink[\\1], $content);



Ik denk dat wel didelijk is wat het moet doen, maar krijg het niet netjes :(

dafelix 18-05-2006 10:05

waarom zo moeilijk regexp gebruiken? als die '\1' vervangen moet worden met de gevonden expressie, werkt 't niet (zou je een regexp moeten hebben voor 't zoeken, een ander voor het vervangen). Reguliere expressies zijn niet echt heel snel, de replace-functie is (afaik) sneller:

PHP-code:

$find = array("tions","nogiets");
$replace = array("map/bestand.html","map/anderbestand.html");
$replacedstring str_replace($find,$replace,$content); 


Dr HenDre 18-05-2006 10:10

replace is idd heel stuk sneller :)
Ik had eens een aantal benchmarkruns, even kijken of ik dat nog ergens kan vinden

Triloxigen 18-05-2006 10:29

Uiteraard is static sneller, maar het is redelijk dynamisch dus dat gaat niet zo goed werken :)

dafelix 18-05-2006 19:16

Code:

$body = preg_replace("#\[b\](.*?)\[/b\]#si", "<b>\\1</b>", $body);
ff stukje uit m'n eigen script, een stukje voor UBB codes, dit werkt iig wel bij mij. mss dat je deze kan overnemen + tot je eigen wensen adapten :)

eddie 18-05-2006 19:48

Citaat:

********** schreef op 18-05-2006 @ 10:35 :
Ik krijg iets met regexp niet echt voor elkaar terwijlk het toch simpel is :|

$getlink['tions'] = "map/bestand.html";

$content = "<a href=\"{GETLINK:tions}\">Opties</a>";

$content = eregi_replace("{GETLINK:*}", $getlink[\\1], $content);



Ik denk dat wel didelijk is wat het moet doen, maar krijg het niet netjes :(

Code:

$content = eregi_replace("{GETLINK:(.*?)}", $getlink[\\1], $content);

Triloxigen 25-05-2006 18:57

Hey, die werkt :cool:

Bedankt :)

Triloxigen 27-05-2006 12:16

Onee, toch niet :(

Manuzhai 29-05-2006 09:48

Ten eerste: altijd de preg*s gebruiken, nooit de ereg*s. Stuk sneller.
Ten tweede: hiervoor ga je preg_replace_callback() nodig hebben.


Alle tijden zijn GMT +1. Het is nu 02:59.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.