Tach!
Abgesehen davon, dass der Anfang
^.*?
nicht benötigt wird, ebensowenig die []-Klammern um die_
, braucht es das ? innerhalb der Gruppe um die Gierigkeit wegzubekommen. Sonst wird alles bis zum letzten_
gefunden.Die Anforderng war vom ersten _ bis zum zweiten _ Nicht vone einem _ zum nächsten _
Ich denke meine zweite Fassung macht das klarer.
preg_match() findet sowieso nur die erste Stelle. Für alle Stellen muss man preg_match_all() verwenden. Auch in Javascript arbeiten die Ausdrücke so, solange man nicht mit dem g(lobal)-Modifier daherkommt. Müsste auch für Perl gelten.
dedlfix.