Bonjour,
Voici mon problème, j'ai un code regex qui est censé recupéré toutes les lignes sauf que ça ne le fait pas (cf.screen):
https://gyazo.com/a36ab426018a1d7199fdc6cac3f1605f
Je n'arrive pas a faire en sorte qu'il recupére toute les lignes, par exemple il ne prend pas 3 4 5 6 7
Texte:
Players on server:
[#] [IP Address]:[Port] [Ping] [GUID] [Name]
--------------------------------------------------
1 176.151.105.237:2304 27 fb553373dbf7a39390a42b69ee66ae44(OK) [B-W]Parol
2 78.231.122.136:27395 19 89c8dc956d8d7d53f48c778a35d544d3(OK) Kyle Sion
3 89.94.118.80:27395 52 6597438842978af54611d784611c333b(OK) Sgt. Oslix Berkanof
4 77.204.138.35:2304 61 099cdd3dc44c01865312efb329c16cb5(OK) Sdt. Michel Pélo
5 77.201.243.215:2304 126 717e215445aa54a4dc42a568a82c8d0f(OK) [A3M] internet Bxnk
6 82.123.174.249:2304 24 234707f2e8689d553ed02a2bb001914a(OK) Arnaud [TSO]
7 31.33.14.104:2304 19 dcb90ba39afc105d392106ba08e197e2(OK) --[ STAFF ]--Edwardd.c
8 109.129.150.189:51529 27 9c67062e8921b775bb826fe8898ebd72(OK) Manu Zwift
9 78.236.55.90:2304 12 0d6722e3a127f0ea5725576bd88c6188(OK) [A3M] Luigi Vicoleti
10 92.171.6.203:2304 17 6f6de7bd694d46de36594fcd2cbb176d(OK) Léonard Mantus
11 80.12.43.21:62720 66 1edccb26648b278d49f3605f2e47cb3d(OK) [TSO] Joe Taldon
12 78.223.73.134:2304 35 976c938c99c8b1dbbaaed45983bea452(OK) Théo Werl
13 84.103.178.146:2304 33 f405a65def01b5bb8fb4e7cbd658649d(OK) Matis Lod
14 78.239.190.189:2304 10 18cd7a1fe50e3fa4b064ae0199562d94(OK) [18thS] Lucky Luciano
15 88.187.196.197:2304 41 e8ca5dcb2777ac705c4bf791cab546de(OK) Sdt. Tom.N
16 84.7.63.252:2304 27 cb1d3d0601baf6a16946620e3aff3e3e(OK) -[ STAFF ]- Dixon Red
18 85.168.54.244:2304 18 dbf90a14d4832529dc58f14a3e30baed(OK) Mani Wolf
21 82.247.252.101:2304 25 f37da539246c6827f40930f02f0559dd(OK) --[ STAFF ]-- PaPy
23 79.91.46.86:2304 38 02cc93a159fb6bb459a647342131ecbb(OK) [18thS]Sudrak Kuruma
25 89.2.117.194:2304 29 eb551e86dd39d5579ebe13a81dfc5ce7(OK) [A3M] Blew Shark
26 90.45.23.105:2304 22 6d19b47c6f56a3056a22f981520f6d02(OK) Capl. Quentin Xavier
27 90.37.182.216:27395 33 d103155dd077055b933ab708bb1c28df(OK) Sdt. Nyxou.N
33 178.83.49.163:2304 35 f954c7679aba6e45c096270d693d0516(OK) [18thS] NMartins
35 88.184.135.193:27395 15 ef27d057064f0b25e15a6da7455107b8(OK) [MLA-Chef] C. Kawanski
36 144.85.173.9:53598 38 0291c8e77673f5ed9ba741a001fe5feb(OK) Gen. Allod Harrinson
39 78.123.186.252:2304 60 69291ac7c2e93f6b706e61508217af18(OK) [MLA] Roman Kawanski
(26 players in total)
Merci d'avance
Le point, si c'est bien pour matcher le nom du joueur, c'est dans le dernier bloc de parenthèses
... \(OK\)\s+(.+)$
Bonsoir.
Si tu nous montrais ta regex, ça pourrait nous permettre de te dire ce que tu pourrais y modifier pour corriger le problème.
Salut !
Huggy c'est parfait ! ça résoud le problème, petite question, pour ajouter tout les accents dans le pseudo et les caractères spéciaux comment je peut fire ?
Tu peux regarder la doc php ici , sinon pour ne pas s'embêter, utilise le '.' qui match n'importe quel caractère. (à tester sur l'unicode !!!)
Quel est l'outil que tu as utilisé dans ton image ?
Edit : pour la ponctuation essaye \p{P}
Perso j'utilise le site http://www.gethifi.com/tools/regex
Et avec cette regex, je capture tout sans probleme :)
([\d]+)(?:[\s]+)([\d\.]+):([\d]+)(?:[\s]+)([\d]+)(?:[\s]+)([\d\w]+)(?:\(OK\))(?:[\s]+)([^\r\n]+)
Pour les chiffres et séparateur, j'utilise les raccourcis:
\d = 0-9
\w = a-zA-Z
\S = Whitespace
?: pour ne pas capturer
Pour le pseudo je récupère tout ce qui n'est pas un retour a la ligne \r et/ou \n.