SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > PHP für Fortgeschrittene und Experten
Hilfe Community Kalender Heutige Beiträge Suchen

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 17.09.2007, 23:52:48
Small-Talk Small-Talk ist offline
Junior Member
 
Registriert seit: Jan 2004
Ort: Fredersdorf bei Berlin
Alter: 40
Beiträge: 184
regexp

Hi Ihr,

ich möchte in einem String alle angaben zwischen {= und } bekommen, um diese dann weiterverarbeiten zu können. Allerdings soll zwischen diesen Zeichen ein \} vorkommen dürfen, also soll das } quase escape-bar sein.

Habt ihr da eine Ahnung was ich bei dem folgenden Script falsch mache ?

PHP-Code:
$this->_regExpAll preg_quote($this->_template->getLeftDelimiter())
                      . 
'(([^\}]|([\\}\\\\]))*)' // => ((\\}|[^\}]|\s|.)]*)
                      
preg_quote($this->_template->getRightDelimiter());
preg_replace_callback(
    
'#'.$this->_regExpAll.'#U',
    array(
$this'_compilePregReplaceCallback'),
    
$source
); 
Mit Zitat antworten
  #2  
Alt 18.09.2007, 00:32:55
defabricator defabricator ist offline
Senior Member
 
Registriert seit: Sep 2007
Ort: Potsdam
Alter: 55
Beiträge: 1.020
AW: regexp

Wie wäre es denn einfach mit
Code:
#{(.*)(?<!\\)}#U
?

\\ für php als \\\\ schreiben

Geändert von defabricator (18.09.2007 um 00:33:31 Uhr)
Mit Zitat antworten
  #3  
Alt 18.09.2007, 00:45:10
Small-Talk Small-Talk ist offline
Junior Member
 
Registriert seit: Jan 2004
Ort: Fredersdorf bei Berlin
Alter: 40
Beiträge: 184
AW: regexp

was bedeutet denn das (?<!\\) ???? - will es ja auch verstehen
Das (.*) geht leider nicht, weil auch Zeilenumbrüche enthalten sein dürfen. Schreibe dazu immer ((\s|.)*) Wenn das besser geht bitte mitteilen.
Mit Zitat antworten
  #4  
Alt 18.09.2007, 01:21:04
defabricator defabricator ist offline
Senior Member
 
Registriert seit: Sep 2007
Ort: Potsdam
Alter: 55
Beiträge: 1.020
AW: regexp

http://www.php.net/manual/de/referen...ern.syntax.php
Zitat:
Lookbehind assertions start with (?<= for positive assertions and (?<! for negative assertions. For example, (?<!foo)bar does find an occurrence of "bar" that is not preceded by "foo".
Und wegen .* : mach aus U einfach Us
http://www.php.net/manual/en/referen....modifiers.php
Zitat:
s (PCRE_DOTALL)
If this modifier is set, a dot metacharacter in the pattern matches all characters, including newlines. Without it, newlines are excluded.
Mit Zitat antworten
  #5  
Alt 18.09.2007, 22:31:57
Small-Talk Small-Talk ist offline
Junior Member
 
Registriert seit: Jan 2004
Ort: Fredersdorf bei Berlin
Alter: 40
Beiträge: 184
AW: regexp

danke dir
Mit Zitat antworten
  #6  
Alt 19.09.2007, 07:35:07
CIX88 CIX88 ist offline
Anfänger
 
Registriert seit: Jan 2007
Alter: 58
Beiträge: 131
AW: regexp

Zitat:
Das (.*) geht leider nicht, weil auch Zeilenumbrüche enthalten sein dürfen
Das ist Quark, weil der Punkt für beliebige Zeichen steht, also auch Zeilenumbrüche.
Es geht allerdings (.*?) auch ...
Mit Zitat antworten
  #7  
Alt 19.09.2007, 12:19:39
defabricator defabricator ist offline
Senior Member
 
Registriert seit: Sep 2007
Ort: Potsdam
Alter: 55
Beiträge: 1.020
AW: regexp

Zitat:
Zitat von CIX88 Beitrag anzeigen
Das ist Quark, weil der Punkt für beliebige Zeichen steht, also auch Zeilenumbrüche.
Nur wenn die Option s mit angegeben wird, wie aus der zitierten Stelle im Manual eigentlich klar hervorgeht.
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
regexp mrdiablo PHP für Fortgeschrittene und Experten 2 28.05.2007 06:45:58
RegExp werden nicht verarbeitet r0w PHP Grundlagen 1 06.02.2006 10:50:36
JS: Brauche eine RegExp - Funktion Marilu HTML, CSS und JavaScript Help! 6 05.02.2004 11:20:40
regexp und mysql: escapen von sonderzeichen feuervogel MySQLi/PDO/(MySQL) 3 14.01.2004 22:18:04
RegExp bei URL - Problem bei Zeilenumbruch Schleicher PHP für Fortgeschrittene und Experten 3 09.08.2002 14:28:53


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:12:38 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt