Ich habe den folgenden regulären Ausdruck in JavaScript, der Strings wie "12: 23: 34: 45" und "12:23"
entspricht %Vor%Das Problem, das ich habe, ist, dass, wenn ich mir die Spieldaten anschaue, nur drei Treffer zurückgegeben werden. z.B. Für 12: 23: 34: 45 sind die zurückgegebenen Matches:
%Vor%d. Die erste erfassende Gruppe meldet nur ihren letzten Wert. Ich hätte gerne die Spiele:
%Vor%Ist das möglich?
Nein, dies ist in JavaScript (und den meisten anderen Regex-Varianten außer Perl 6 und .NET) nicht möglich. Wiederholte Erfassungsgruppen speichern immer den letzten übereinstimmenden Wert. Nur .NET und Perl ermöglichen Ihnen den Zugriff auf diese Übereinstimmungen (zB match.Groups(i).Captures
in .NET).
Sie benötigen zwei Durchläufe, die ersten, um die Zeichenfolgen zu finden, die zweiten, um die Übereinstimmungen zu durchlaufen und diese nach ihren Unterwerten zu durchsuchen.
Oder machen Sie die Regex explizit:
%Vor%Tags und Links javascript regex