SetaPDF
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 25.08.2005, 20:29   #1
TP-Specialist
 
Benutzerbild von theo
 
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
theo bringt sich richtig ein

funktionsaufruf in einem regexp


moin gemeinde!

in der "literatur" hab ich folgendes beispiel gefunden
PHP-Code:
preg_replace("/(<\/?)(\w+)([^>]*>)/e""'\\1'.strtoupper('\\2').'\\3'"$html_body); 
welches alle html-tags gross schreibt.
der obigen syntax folgend habe ich folgendes "verbrochen":
PHP-Code:
preg_replace("/\{(\w+):?(\w+)?\}/i"".$this->functions('\\1','\\2')."$input); 
was natuerlich zu keinem gescheiten ergebnis fuehrt, weil ich es sonst hier nicht posten wuerde.
alles, was zwischen den doublequotes steht, kommt an, statt ein ergebnis der funktion. lass ich doublequotes und punkte weg, kommen \1 und \2 an.

eigentlich brauch ich jetzt nicht mehr weiterschreiben. die meisten werden schon erkannt haben, wo mein problem liegt.


gruss
hardy
theo ist offline   Mit Zitat antworten


Alt 25.08.2005, 21:17   #2
TP-Veteran
 
Benutzerbild von fettmme
 
Registriert seit: Feb 2002
fettmme bringt sich richtig einfettmme bringt sich richtig ein
/e steht für eval und lässt die Ausführung einer Funktion zu
__________________
class GetProfileCustomerEntityReceiverInformationReceiverAndProgrammingInforma...{
public function __construct(){ if(!$this) die(' '); } }
http://www.thedailywtf.com/
fettmme ist offline   Mit Zitat antworten
Alt 25.08.2005, 21:54   #3
TP-Specialist
 
Benutzerbild von theo
 
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
theo bringt sich richtig ein
ich hasse es, wenn loesungen fuer ewig lange gruebeleien und kopfzerbrechen dann so aussehen: /e
is doch nich fair. mal ganz im ernst!

aber ein problem bleibt trotzdem: die uebergabe eines wertes ... kein problem. zwei werte: ebenso viele fehlermeldungen. wieso?
PHP-Code:
preg_replace("/\{(\w+):?(\w+)?\}/ie""$this->functions('\\1','\\2')"$input); 
vielleicht stehe ich heute auch etwas auf dem schlauch ... wuerde mich nicht wundern
theo ist offline   Mit Zitat antworten
Alt 25.08.2005, 21:59   #4
TP-Veteran
 
Benutzerbild von fettmme
 
Registriert seit: Feb 2002
fettmme bringt sich richtig einfettmme bringt sich richtig ein
Ist schon spät. Geht das?
Code:
preg_replace("/\{(\w+):?(\w+)?\}/ie", "$this->functions('$1','$2')", $input);
__________________
class GetProfileCustomerEntityReceiverInformationReceiverAndProgrammingInforma...{
public function __construct(){ if(!$this) die(' '); } }
http://www.thedailywtf.com/
fettmme ist offline   Mit Zitat antworten
Alt 25.08.2005, 22:07   #5
TP-Specialist
 
Benutzerbild von theo
 
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
theo bringt sich richtig ein
geht leider auch nicht. vielleicht hilft dir die fehlermeldung weiter als mir
Code:
Parse error: syntax error, unexpected ',' in regexp code on line 1
Fatal error: preg_replace() [function.preg-replace]: Failed evaluating code: ('select','konten') in blablabla.class.php on line ...
theo ist offline   Mit Zitat antworten
Alt 25.08.2005, 22:14   #6
TP-Specialist
 
Benutzerbild von theo
 
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
theo bringt sich richtig ein
voellig daneben!

ich hab gerade die funktion nochmal getestet. es wird nix uebergeben. die ausgaben, die ich gesehen habe, kamen direkt aus dem regexp. die funktion wird nicht mal aufgerufen. mein fehler. meine testvariablen bzw. deren uebergabewerte waren schlecht gewaehlt.
theo ist offline   Mit Zitat antworten
Alt 25.08.2005, 22:22   #7
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
also ich bin heute auch nicht mehr so fit - aber warum nimmst Du nicht preg_replace_callback, wenn Du das für eine Funktion brauchst ?
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
steffenk ist offline   Mit Zitat antworten
Alt 25.08.2005, 22:32   #8
TP-Specialist
 
Benutzerbild von theo
 
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
theo bringt sich richtig ein
willkommen im club der mueden und geplagten

und gleichzeitig gebuehrt dir dank und ehre! in der beschreibung zu der funktion hab ich den fehler in meinem script gefunden:
PHP-Code:
preg_replace("/\{(\w+):?(\w+)?\}/e""\$this->functions('\\1','\\2')"$input); 
das bloede dollarzeichen muss auskommentiert werden ...

also ... danke und erledigt

hardy (der jetzt auch schlafen geht ... gute nacht!)
theo ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
funktionsaufruf in einem regexp funktionsaufruf in einem regexp
« Bei If-Abfrage soll auf Groß und Kleinschreibung geachtet werden | Automatische nummerierung entfernen »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

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 an
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:08 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67