IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Perl Discussion :

Eliminer les crochets sans split


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    95
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 95
    Par défaut Eliminer les crochets sans split
    Bonjour,

    Je veux éliminer les crochets en parsant le fichier :

    ex :
    CLE[1] abc
    CLE[2] def

    et je veux avoir
    CLE1 abc
    CLE2 def

    Merci (je ne suis pas fort en regex)

  2. #2
    Membre chevronné Avatar de iblis
    Inscrit en
    Janvier 2007
    Messages
    510
    Détails du profil
    Informations personnelles :
    Âge : 58

    Informations forums :
    Inscription : Janvier 2007
    Messages : 510
    Par défaut
    Quelque chose comme s/\[(\d+)\]/\1/ ?

  3. #3
    Membre chevronné Avatar de iblis
    Inscrit en
    Janvier 2007
    Messages
    510
    Détails du profil
    Informations personnelles :
    Âge : 58

    Informations forums :
    Inscription : Janvier 2007
    Messages : 510
    Par défaut
    J'aime pas trop poster sans tester mais là tout va bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #!/usr/bin/perl -w
    use strict;
     
    while (<DATA>) {
        $_ =~ s/\[(\d+)\]/\1/;
        print;
    }
     
    __DATA__
    CLE[1] abc
    CLE[2] def

  4. #4
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    95
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 95
    Par défaut
    Normalement je dois comparer deux fichiers:

    while ($ligne){

    While ($lign){
    if($ligne eq $lign) {
    print "ok\n";
    }

    Le problème c'est qu'il ya des lignes qui comportent des crochets, donc la comparaison ne passe pas ( caractères spéciaux), j'ai pensé donc à éliminer les crochets.

    ça serait mieux de substituer les crochets par \crochet, ds ce cas là je procéderai commenet, Merci

  5. #5
    Membre chevronné Avatar de iblis
    Inscrit en
    Janvier 2007
    Messages
    510
    Détails du profil
    Informations personnelles :
    Âge : 58

    Informations forums :
    Inscription : Janvier 2007
    Messages : 510
    Par défaut
    Mets des balises CODE dans tes posts : c'est plus lisible.

    Pourquoi n'utilises-tu pas le bout de code, ou au moins l'algorithme, que t'as indiqué Jedaï ? (Parce que là, tu risques d'avoir des problèmes si un fichier est plus long que l'autre).

    D'autre part que veux-tu dire par "la comparaison ne passe pas [avec les] caractères spéciaux" ? Il n'y a aucun problème à comparer des chaînes de caractères avec des [ ], je t'assure. Fais le test, tu verras.

    Sinon pour ta question relative au remplacement des crochets (au fait comprends-tu comment est construite la substitution, sinon, ça ne sert à rien), voilà un exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        $_ =~ s/\[(\d+)\]/<crochet>\1<\\crochet>/;
    \1 correspond à la première capture, ici : (\d+).

  6. #6
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    95
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 95
    Par défaut
    J'ai pas compris ce que m'a dit Jedai...Donc je ne l'utilise pas...Tu te trompes, quand il s'agit d'une ligne ou il y'a un crochet, la comparaison ne passe pas. ça fait 4 h que je teste ceci...Et je te garantie que ça ne marche pas...Teste si tu veux et tu verras .

    NB : Franchement j'ai du mal a comprendre ce que dit Jedai.

Discussions similaires

  1. Liste d'arguments sans les crochets
    Par Spitfire 95 dans le forum Général Python
    Réponses: 7
    Dernier message: 22/03/2010, 20h46
  2. [Visuel] Eliminer les triangles warning de l'explorer
    Par dinver dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 08/12/2004, 15h14
  3. Réponses: 4
    Dernier message: 11/09/2004, 16h38
  4. [WebMacro] Les crochets s'invitent!
    Par Twofy dans le forum Développement Web en Java
    Réponses: 1
    Dernier message: 04/08/2004, 13h22
  5. [String] Récupérer une sous -chaîne sans split
    Par Crazyblinkgirl dans le forum Langage
    Réponses: 3
    Dernier message: 19/07/2004, 14h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo