Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 06/08/2007, à 10:47

LPedro

[expression regulière]Remplacer les parenthèses

Bonjour,

J'aimerai à l'aide d'une expression régulière remplacer dans une chaine des parenthèses par un autre symbole.
Par exemple:

$chaine =~ s/")"/"]"/g;
$chaine =~ s/"("/"["/g;

J'ai essayé avec cette façon mais cela ne donne rien.

Est ce que vous avez une solution s'il vous plait?

Merci
Pierre

Hors ligne

#2 Le 06/08/2007, à 11:02

ekra

Re : [expression regulière]Remplacer les parenthèses

Bonjour,

Essaie :

chaine = 's/)/]/g'

Dernière modification par ekra (Le 06/08/2007, à 11:03)


PTC !
GPG Key ID = 5518CFC7

Hors ligne

#3 Le 06/08/2007, à 12:44

LPedro

Re : [expression regulière]Remplacer les parenthèses

Ca ne marche pas.
J'ai ceci comme réponse:

/)/: unmatched () in regexp

edit: c'est ceci qu'il faut utiliser:

$chaine=~ s/\)/\]/g;

Dernière modification par LPedro (Le 06/08/2007, à 14:00)

Hors ligne

#4 Le 06/08/2007, à 21:59

JoelS

Re : [expression regulière]Remplacer les parenthèses

LPedro a écrit :
$chaine =~ s/")"/"]"/g;
$chaine =~ s/"("/"["/g;

Tu ne le précises pas, mais ça sent bon le Perl, ça.

Si c'est tout ce que tu veux faire, une bonne vieille translitération de chaîne suffira certainement. Voir la fonction tr.

$chaine = 'zdbu(zci(v,or)er)()';
print "$chaine\n";
$chaine =~ tr/()/[]/;
print "$chaine\n";

devrait marcher.

Hors ligne

#5 Le 07/08/2007, à 07:36

littleblackdog

Re : [expression regulière]Remplacer les parenthèses

à propos d'expressions régulières...
vous connaissez peut-être cette technique pour commenter vos expressions et arriver à les comprendre après quelques semaines sans y toucher, mais au cas où ... voilà. smile

Hors ligne