Funktioniert leider nicht:
Ich hatte im ersten Posting {} und () visuell nicht auseinander halten können.
[code lang=php]<?
$text="viel text {array:daten} hallo{/array:daten} vieltext";
preg_match_all("!{array:([a-zA-Z0-9]*)}(.*?){/array:\2}!",$text,$list);
preg_match_all("!{array:([a-zA-Z0-9]*)}(.*?){/array:\1}!",$text,$list);
maskiere die { }, schon alleine meinen Augen zuliebe,
wenn du sie nicht als Quantifikatoren brauchst.
Die Backreferenz sollte $1 jetzt matchen, ergo \1
in perl OK
my $a="viel text {array:daten} hallo{/array:daten} vieltext";
$a =~ m!{array:([a-zA-Z0-9]*)}(.*?){/array:\1}! and print $1, $2;
mfg Beat
--
><o(((°> ><o(((°>
<°)))o>< ><o(((°>o
Der Valigator leibt diese Fische
><o(((°> ><o(((°>
<°)))o>< ><o(((°>o
Der Valigator leibt diese Fische