php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 20.01.2012, 21:55  
Erfahrener Benutzer
 
Registriert seit: 03.08.2010
Beiträge: 1.141
PHP-Kenntnisse:
Anfänger
hausl wird schon bald berühmt werdenhausl wird schon bald berühmt werden
Standard [Erledigt] Regex - Lösungsweg richtig?

Folgendes Pattern:

Code:
#\{TestPlatzhalter\|(.*)\}#Us
matched auf (= OK!):

Code:
Testtext {TestPlatzhalter|} Testtext
Testtext {TestPlatzhalter|ja} Testtext
matched nicht auf (= OK!):
Code:
Testtext {TestPlatzhalterAnderer|ja} Testtext
sollte matchen - tut es aber nicht - auf:
Code:
Testtext {TestPlatzhalter} Testtext
Der Grund ist mir klar, es wird im Pattern eine Pipe verlangt, jedoch habe ich das Problem, wenn ich die Pipe optional mache
Code:
#\{TestPlatzhalter\|?(.*)\}#Us
dann matched leider auch auf das dritte von oben
Code:
Testtext {TestPlatzhalterAnderer|ja} Testtext
(sollte es aber nicht) weil die Pipe ja optional ist und dahinter wiederum "jedes Zeichen" erlaubt ist.

Ich hätte mir nun überlegt, das ich zuerst entweder die Pipe oder die Klammer suche
Code:
#\{TestPlatzhalter[\|\}](.*)\}#Us
Jedoch ist mir dann nicht klar wie ich hinten raus verfahren soll, da eine weitere Klammer nur richtig wäre wenn vorher nur die Pipe kommt und nicht schon eine geschlossene Klammer.

Ist da ev. der richtige Ansatz in diese Richtung weiter zu "forschen"?
http://www.php.net/manual/de/regexp....onditional.php

Danke!
__________________
Keine Zahl != ein Zeichen das keine Zahl ist
hausl ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 20.01.2012, 22:07  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
da eine weitere Klammer nur richtig wäre
Genau das.

Code:
(?:\|(.*))?
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 20.01.2012, 22:55  
Erfahrener Benutzer
 
Registriert seit: 03.08.2010
Beiträge: 1.141
PHP-Kenntnisse:
Anfänger
hausl wird schon bald berühmt werdenhausl wird schon bald berühmt werden
Standard

Code:
#\{TestPlatzhalter(?:\|(.*))?\}#Us
Danke nikosch! *freu*
__________________
Keine Zahl != ein Zeichen das keine Zahl ist
hausl ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
RegEx für E-Mails (preg_replace) N4bla PHP Tipps 2010 4 18.11.2010 21:53
[Erledigt] Kleine Regex Frage Bubelbub PHP-Fortgeschrittene 8 25.07.2010 23:39
Datenbank richtig aufgebaut? bageleudi Datenbanken 2 31.03.2010 21:01
[Erledigt] Regex - wie richtig? Unimatrix_0 PHP Tipps 2010 2 15.03.2010 20:19
[Erledigt] regex | variables wort herausfiltern Knechtle PHP Tipps 2010 6 05.03.2010 17:21
[Erledigt] RegEx Problem - Datum wird nicht richtig erkannt. LeCreuX PHP Tipps 2010 9 21.02.2010 20:21
parameter von interfaces in klassen richtig mit anwenden? litterauspirna PHP Tipps 2009 27 30.06.2009 20:58
[Erledigt] Javascript-Code in einem document.write richtig durchführen + richtiges Po BartTheDevil89 JavaScript, Ajax und mehr 15 29.11.2008 14:08
Regex: Auslesen der Meta-Tags einer Webseite Sucheingrenzung pepe24 PHP Tipps 2008 12 31.05.2008 15:41
Regex Link Problem Broadcast PHP Tipps 2008 2 29.02.2008 16:30
[gelöst :D ] regex tuts nur einmal pro zeile notyyy PHP Tipps 2008 17 24.09.2007 15:40
RegEx für Mail-Adresse (Bitte prüfen!) vollkommenegal PHP Tipps 2006 13 20.11.2006 20:02
habe ein paar fragen zu REGEX imported_kremser PHP Tipps 2006 11 31.01.2006 15:30
RegEx findet Stringvorkommen nicht PHP Tipps 2007 6 08.12.2005 21:52
Regex über mehrere zeilen PHP-Fortgeschrittene 3 25.12.2004 16:48

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
richtig regex

Alle Zeitangaben in WEZ +2. Es ist jetzt 21:32 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum