Einzelnen Beitrag anzeigen
  #1 (permalink)  
Alt 25-07-2015, 13:40
LimpBiz
 Registrierter Benutzer
Links : Onlinestatus : LimpBiz ist offline
Registriert seit: Jul 2015
Beiträge: 1
LimpBiz befindet sich auf einem aufstrebenden Ast
Standard preg_match Probleme

Hi php-Profis !

ich versuche, mit preg_match_all einen bestimmten String zu zerschnibbeln. Der String sieht etwa so aus:
Zitat:
CinemaxX >14:00 (3D) 17:10 (3D) 20:00 (3D) 22:00 (3D) Cinespace >12:30 (3D) 14:00 15:00 (3D) 17:30 (3D) 19:30 20:15 (3D) 22:45 (3D)
für mich besonders schwierig: Das (3D) kann - muss aber nicht - hinter der Uhrzeit stehen.

Mein Versuch:
PHP-Code:
preg_match_all("/(?<Kino>[^>]*)>(?<Zeiten>(([0-9][0-9]:[0-9][0-9].?)*\(.+?\).?)*)/",$a,$treffer,PREG_SET_ORDER
funktioniert eigentlich:
Zitat:
[Kino] => CinemaxX
[Zeiten] => 14:00 (3D) 17:10 (3D) 20:00 (3D) 22:00 (3D)
aber nicht wenn die letzte (3D) Angabe nicht da ist. Demnach wird
Zitat:
CinemaxX >14:00 (3D) 17:10 (3D) 20:00 (3D) 22:00 Cinespace >12:30 (3D) 14:00 15:00 (3D) 17:30 (3D) 19:30 20:15 (3D) 22:45
falsch zerschnibbelt und gibt:
Zitat:
[Kino] => CinemaxX
[Zeiten] => 14:00 (3D) 17:10 (3D) 20:00 (3D)
die letzte zeit fehlt also und landet in der 2.ten Bezeichnung:
Zitat:
[Kino] => 22:00 Cinespace
[Zeiten] => 12:30 (3D) 14:00 15:00 (3D) 17:30 (3D) 19:30 20:15 (3D)
Mein nächster Versuch, das (3D) extra zu gruppieren:
PHP-Code:
preg_match_all("/(?<Kino>[^>]*)>(?<Zeiten>(([0-9][0-9]:[0-9][0-9].?)+(\(.+?\))?.)*)/" 
haut nicht hin. Kann mir jemand verklickern, wie es richtig sein muss ?
Ich sage schon mal
Mit Zitat antworten