Hy!
Ich wollte gestern eine Seite programmieren, die die Trackmania-Nations Ergebnisse ausgibt. Dafür muss ich die Namen der Spieler nach bestimmten Strings durchsuchen, die Trackmania zu färben der Usernamen benutzt.
Ein Username sieht z.B. so aus: $fffuhu$0f001
Das währe uhu01, wobei uhu in weiss geschrieben wird, sowie 01grün geschrieben wird.
Die Farben werden mit einem $ am Beginn geschrieben, dann kommt eine 3-Stellen hex-Zahl.
Der Code mit dem Ich die Farben-Strings suchen wollte, sieht vereinfacht auf das Problem so aus:
Folgende Ausgabe bekomme ich:
Erwartet hätte ich allerdings:
Wo liegt der fehler in meinem Regex?
mfg
uhu01
Ich wollte gestern eine Seite programmieren, die die Trackmania-Nations Ergebnisse ausgibt. Dafür muss ich die Namen der Spieler nach bestimmten Strings durchsuchen, die Trackmania zu färben der Usernamen benutzt.
Ein Username sieht z.B. so aus: $fffuhu$0f001
Das währe uhu01, wobei uhu in weiss geschrieben wird, sowie 01grün geschrieben wird.
Die Farben werden mit einem $ am Beginn geschrieben, dann kommt eine 3-Stellen hex-Zahl.
Der Code mit dem Ich die Farben-Strings suchen wollte, sieht vereinfacht auf das Problem so aus:
Code:
<?php
$pattern = array( '/\$[a-f0-9]{3}/');
$subject = "$fffuhu$0f001";
preg_match_all($pattern[0], $subject, $matches, PREG_OFFSET_CAPTURE);
print_r( $matches);
?>
Folgende Ausgabe bekomme ich:
Code:
Array
(
[0] => Array
(
[0] => Array
(
[0] => $0f0
[1] => 0
)
)
)
Code:
Array
(
[0] => Array
(
[0] => Array
(
[0] => $fff
[1] => 1
)
)
[1] => Array
(
[0] => Array
(
[0] => $0f0
[1] => 1
)
)
)
mfg
uhu01