Hallo!
Folgendes Problem:
ich möchte aus einer Datei folgende Muster, {igendeintext} herausfiltern und in ein Array speichern.
Dabei habe ich folgenden Ausdruck verwendet:
.
Beispiel:
das ergibt als Ergebnis:
soweit alles richtig, aber wenn der String so aussieht:
kommt dieses Ergebnis:
Das heißt, wenn ein 2.Match gefunden wird, werden keine weiteren
Arrayelemente mit diesem hinzugefügt, sondern das Element erweitert
und nicht relevante Terxtabschnitte übernommen.
Kann mir Jemand sagen was ich da falsch mache ? - ist vielleicht meine Regex nicht ok ?
hab schon so manches versucht, aber bin auf keiner Lösung gestoßen.
Vielen Dank!
Marco
Folgendes Problem:
ich möchte aus einer Datei folgende Muster, {igendeintext} herausfiltern und in ein Array speichern.
Dabei habe ich folgenden Ausdruck verwendet:
Code:
'[\{.*\}]'
Beispiel:
Code:
$string = "blablabla{key1}blablabla"; preg_match_all('[\{.*\}]', $string, $regs ); print_r( $regs );
Code:
Array ( [0] => Array ( [0] => {key1} ) )
Code:
$string = "blablabla{key1}blablabla{key2}"; preg_match_all('[\{.*\}]', $string, $regs ); print_r( $regs );
kommt dieses Ergebnis:
Code:
Array ( [0] => Array ( [0] => {key1}blablabla{key2} ) )
Arrayelemente mit diesem hinzugefügt, sondern das Element erweitert
und nicht relevante Terxtabschnitte übernommen.
Kann mir Jemand sagen was ich da falsch mache ? - ist vielleicht meine Regex nicht ok ?
hab schon so manches versucht, aber bin auf keiner Lösung gestoßen.
Vielen Dank!
Marco
Kommentar