[Perl] J'arrive pas a obtenir ce que je veux avec les regexp

J'arrive pas a obtenir ce que je veux avec les regexp [Perl] - Perl - Programmation

Marsh Posté le 18-04-2002 à 14:44:46    

Alors voila le pb ... g une variable scalaire $tmp qui contient @0:10 je veux mettre dans 2 variable différentes les valeur 0 et 10 (il ne peut y avoir que des int entre @ et : et entre : et la fin de la chaine)
Un grand merci a celui ou ceux qui me trouve ca ... car je vais m'arracher les cheveux avec ces regexp (et je fais que débuter ;-) )

Reply

Marsh Posté le 18-04-2002 à 14:44:46   

Reply

Marsh Posté le 18-04-2002 à 14:48:45    

/.*(\d+):(\d+)/ ou un truc dans le genre...
Si tu veux essayer, y'a activestate qui fait un editeur pour Perl, si l'editeur est pas fameux (java, donc lent et lourd), il possede un editeur de regexp, qui permet de le tester en temps reel... et ça c'est super pratique :)

 

[jfdsdjhfuetppo]--Message édité par Trracer--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 18-04-2002 à 14:55:13    

Okay merci je comprend la syntaxe mais g pas encore bien comprit comment on rechoppait les 2 variables qui m'interesse ... je crois qu'il fo faire avec $1 et $2 mais g du mal la ...  
Merci ;)

Reply

Marsh Posté le 18-04-2002 à 14:55:14    

SCREAM78 a écrit a écrit :

Alors voila le pb ... g une variable scalaire $tmp qui contient @0:10 je veux mettre dans 2 variable différentes les valeur 0 et 10 (il ne peut y avoir que des int entre @ et : et entre : et la fin de la chaine)
Un grand merci a celui ou ceux qui me trouve ca ... car je vais m'arracher les cheveux avec ces regexp (et je fais que débuter ;-) )  




 
my ($heure, $minute) = $tmp =~ /^\@(\d+):(\d+)$/;
 
À condition qu'il n'y ai pas d'espaces avant et après... sinon tu enlèves le ^ et le $ :)
 
Tu récupères donc les 2 valeurs dans $heure et $minute

 

[jfdsdjhfuetppo]--Message édité par Tentacle--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 18-04-2002 à 14:57:00    

Oki merci je viens de comprendre ... pas facile le perl au debut ... je teste ca de suite

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed