Substitution de parenthèses

Résolu/Fermé
sylvie45 Messages postés 2 Date d'inscription lundi 26 février 2007 Statut Membre Dernière intervention 26 février 2007 - 26 févr. 2007 à 21:59
sylvie45 Messages postés 2 Date d'inscription lundi 26 février 2007 Statut Membre Dernière intervention 26 février 2007 - 26 févr. 2007 à 22:54
Bonjour,

Je cherche une solution en PERL pour substituer une chaîne de type :

(01:25) en 01:25

j'ai essayé entres autres : $v =~s/(\(\d+:\d+\))/$1/ ; mais sans changement de la chaine de caractère ni message d'erreur d'ailleurs.

j'ai aussi essayé $v=~s/\(// ; et $v=~s/\)// ; (donc en 2 lignes) et ça fonctionne mais j'ai aussi un message :
"use of uninitialize value in substitution (s///)"


Quelqu'un aurait-il une idée ? merci d'avance !!!

2 réponses

lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
26 févr. 2007 à 22:16
Salut,

~$ echo '(01:25)' | perl -ne 's/(\(\d+:\d+\))/$1/;print'
(01:25)
~$ echo '(01:25)' | perl -ne 's/\((\d+:\d+)\)/$1/;print'
01:25
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
26 févr. 2007 à 22:25
~$ echo '(01:25)' | perl -ne 's/[()]//g;print'
01:25

0
sylvie45 Messages postés 2 Date d'inscription lundi 26 février 2007 Statut Membre Dernière intervention 26 février 2007
26 févr. 2007 à 22:54
ça marche en effet, je te remercie...
0