Je risque de passer souvent ici en ce moment Encore et toujours débutant en Perl (ou assimilé ), j'aurai une pitite question sur un découpage de chaine de caractères.
Je récupère une chaine de caractères du genre :
[blabla][blublu]djshfsldhfeuhff
Avec des informations entre les "[...]" qui se baladent dans la chaine (pas forcément au début ou à la fin).
Je tente de récupérer les infos entre les crochets soit "blabla" et "blublu" dans mon exemple (le reste je m'en fous totalement ) et je sais pas trop comment faire
Quelqu'un a une idée ? voire mieux ... une solution ?
Merci bien.
Message édité par Profil supprimé le 21-07-2009 à 09:43:17
Publicité
Posté le 17-07-2009 à 16:17:34
gilou
Modérateur Modosaurus Rex
Posté le 17-07-2009 à 23:01:05
Deux hints: expression reguliere non-greedy pour capturer ce qui est entre [ et ], et \G
A+,
---------------
There's more than what can be linked! -- Le capitaine qui ne veut pas obéir à la carte finira par obéir aux récifs. -- No jab ? No job ! -- (╯°□°)╯︵ ┻━┻
Ça me récupère bien ABC-123, BAC-321, ACB-213 et CAB-312, par contre est ce le plus "optimisé" ... (et le moins tordu ) ... pas sur
gilou
Modérateur Modosaurus Rex
Posté le 22-07-2009 à 08:10:07
Ca serait plus simple de faire:
while ($mavar =~ /\[(\w+-\d+)\]/go)
{
my $var = $1;
}
A+,
---------------
There's more than what can be linked! -- Le capitaine qui ne veut pas obéir à la carte finira par obéir aux récifs. -- No jab ? No job ! -- (╯°□°)╯︵ ┻━┻