php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 20.12.2008, 21:16  
Neuer Benutzer
 
Registriert seit: 19.07.2008
Beiträge: 20
Unbass befindet sich auf einem aufstrebenden Ast
Standard Reguläre Ausdrücke

Guten Abend,
Hab ein Problem mit regulären ausfrücken es soll der text zwischen:
<!-- BEGIN $place -->
TEXT
<!-- END $place -->
ausgelesen werden in der datei steht z.b:

<!-- BEGIN Test -->
Hallo Welt!
<!-- END Test -->

<!-- BEGIN Test2 -->
Hallo, Test Welt!
<!-- END Test2 -->

jetzt gebe ich an dass $place Test sein soll wie mache ich das ?

Hab folgdendes:
PHP-Code:
preg_match("<!--[:space:]BEGIN[:space:]".$place."[:space:]-->.<!--[:space:]END[:space:]".$place."[:space:]-->"$str$matches); 
Was ist der Fehler ?

Vielen Dank
Unbass
Unbass ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 20.12.2008, 21:37  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.657
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

-> preg_match_all()
-> der Text zwischen deinen Kommentaren muss mit ".*" adressiert werden
-> da der Text Zeilenumbrüche beinhaltet brauchst du entsprechende Modifier
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline  
Alt 20.12.2008, 22:04  
Neuer Benutzer
 
Registriert seit: 19.07.2008
Beiträge: 20
Unbass befindet sich auf einem aufstrebenden Ast
Standard

Ok danke habe es nun abgeändert nun habe ich noch ne frage welchen Modifiert brauche ich ?

Habe nun:
PHP-Code:
preg_match_all("<!--[:space:]BEGIN[:space:]".$place."[:space:]-->(.*)<!--[:space:]END[:space:]".$place."[:space:]-->"$str$matches); 
Mit der Klammer um (.*) kommt:
Code:
Warning:
Code:
  preg_match_all() [function.preg-match-all]: Unknown modifier '.' in
ohne:
Code:
Warning:  preg_match_all() [function.preg-match-all]: Unknown modifier '.' in
Kannst du mir villeicht posten wie genu du des meintest ?

Geändert von Unbass (20.12.2008 um 22:05 Uhr). Grund: 2 Code
Unbass ist offline  
Alt 20.12.2008, 22:06  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.657
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

[quote]Kannst du mir villeicht posten wie genu du des meintest ?[/QUOTE
Du brauchst noch einen Delimiter um deinen Ausdruck. So sollte es funktionieren:

PHP-Code:
preg_match_all('/<!--[:space:]BEGIN[:space:]".$place."[:space:]-->(.*)<!--[:space:]END[:space:]".$place."[:space:]-->/im',$str,$matches); 
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline  
Alt 20.12.2008, 23:18  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.709
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

Und da verließen sie ihn…
Doc, was ist mit dir los? Du schwächelst!

1. POSIX-Ausdrücke sind nur innerhalb von Zeichenklassen erlaubt
2. Die Variable wird er innerhalb von Singlequotes wohl eher nicht parsen
3. Die Modifier sind auch suboptimal

PHP-Code:
preg_match_all('/<!--[[:space:]]BEGIN[[:space:]]'.$place.'[[:space:]]-->(.*)<!--[[:space:]]END[[:space:]]'.$place.'[[:space:]]-->/Uis'$str$matches); 
Die Zeichen <, > und ! kann man der Sauberkeit halber noch maskieren, funktioniert aber auch so.
__________________
Refining Linux Advent Calendar series “24 Outstanding ZSH Gems
Manko10 ist offline  
Alt 21.12.2008, 10:12  
Neuer Benutzer
 
Registriert seit: 19.07.2008
Beiträge: 20
Unbass befindet sich auf einem aufstrebenden Ast
Standard

ok danke hat funktioniert ...
Unbass ist offline  
 


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
htaccess reguläre Ausdrücke - Ausdruck wird angehängt TailerD Server, Hosting und Workstations 13 07.02.2008 14:24
reguläre ausdrücke anno Off-Topic Diskussionen 11 19.07.2007 16:18
Reguläre Ausdrücke JEGO PHP Tipps 2007 8 27.02.2007 18:38
Reguläre Ausdrücke Mano PHP Tipps 2007 9 06.01.2007 21:43
Reguläre Ausdrücke (preg_match) tinchen PHP Tipps 2006 12 10.11.2006 00:45
Reguläre Ausdrücke Dopedouglaz PHP Tipps 2006 7 24.05.2006 12:58
reguläre ausdrücke ... notyyy PHP Tipps 2006 7 19.02.2006 10:57
Reguläre Ausdrücke und preg_match duderino PHP Tipps 2006 4 09.01.2006 17:19
Reguläre Ausdrücke mal wieder... PHP Tipps 2007 4 23.12.2005 17:09
vim und reguläre ausdrücke dazerglovic Server, Hosting und Workstations 1 05.06.2005 22:43
reguläre ausdrücke /foren code PHP-Fortgeschrittene 8 28.02.2005 15:04
Reguläre Ausdrücke :-( Alpha Centauri PHP Tipps 2005 11 23.02.2005 15:49
Reguläre Ausdrücke - Zahl suchen PHP Tipps 2004 6 17.09.2004 12:28
Reguläre Ausdrücke Spyker PHP Tipps 2004 1 24.08.2004 12:03

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php variable in reguläre ausdrücke, reguläre ausdrücke space, php reguläre ausdrücke space, variable in regulären ausdruck php, warning: preg_match_all() [function.preg-match-all]: unknown modifier \'1\' in, reguläre ausdrücke php, preg_match [:spaces:], php variable als regulären ausdruck, php regulärer ausdruck mit variable, php reguläre ausdrücke variablen, text zwischen start und stop regulärer ausdruck, php variable regulärer ausdruck, reguläre ausdrücke :space:, php reguläre ausdrücke [:space:], \regulärer ausdruck\ \space\, space in regulären ausdrücke, reguläre ausdrücke php unknown modifier [, preg_match space, reguläre ausdrücke \text zwischen\, reguläre ausdrücke php modifier

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:39 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