Ich bin mir nicht sicher, ob das eine "besser" ist als das andere, und warum das so sein sollte, aber ich habe eine Originalsaite, die so aussieht:
$string = '/random_length_user/file.php';
Nun gibt es zwei Möglichkeiten, es abzugleichen, die erste mit Hilfe meines neuen Freundes, dem Rückblick, und die zweite ohne:
preg_match("%(?<=^/)([^/]*)%", $string, $capture);
preg_match("%^/([^/]*)%", $string, $capture);
Sie kehren der Reihe nach zurück:
Array
(
[0] => random_length_user
)
Array
(
[0] => /random_length_user
[1] => random_length_user
)
Im Wesentlichen erhalte ich das gewünschte Ergebnis in $capture[0] mit look-behind und in $capture[1] ohne. Die Frage ist nun ... gibt es einen Grund, eine dieser Methoden der anderen vorzuziehen?