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

Autres Logiciels Discussion :

Notepad++ RegEx : Remplacement conditionnel


Sujet :

Autres Logiciels

  1. #1
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    981
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut Notepad++ RegEx : Remplacement conditionnel
    Bonjour à tous,

    Bon j'ai beau essayé je reste un . Ça veut pas rentrer dans ma caboche le traitement via PRCE Regular Expressions.

    J'ai donc besoin

    Contexte
    Un fichier de type ci-dessous:

    idlong toto integer not null,
    logklon moyoto varchar(20) not null,
    idpoio toto integer not null,
    logklon moyoto varchar(20) not null,

    Problème


    Comment pour chaque ligne commençant par id
    • Ajouter après integer le mot unsigned
    • Ajouter AVANT la virgule le texte AUTO INCREMENT



    De pas trouver, j'en et me rend

    Alors merci chaleureusement pour votre aide
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    981
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut
    Bon, j'ai un peu avancé mais j'ai encore de nombreuses interrogation:

    Si je saisie dans recherche:
    (^id.+)+(integer)+(.*)

    Dans remplacer
    \1 \2 unsigned\3

    j'obtiens
    idlong toto integer unsigned not null,
    logklon moyoto varchar(20) not null,
    idpoio toto integer unsigned not null,
    logklon moyoto varchar(20) not null,


    1er problème:
    Par contre l'espace avec le mot précédent integer est répété

    2ème problème:
    Je ne sas pas comment faire pour ajouter auto increment en fin de ligne avant la virgule.
    J'avais tenté dans
    chercher: (^id.*)+(integer)+(.*)+([,])
    Remplacer : \1 \2 unsigned\3 auto\4

    Mais j'obtiens ça

    idlong toto integer unsigned auto
    logklon moyoto varchar(20) not null,
    idpoio toto integer unsigned auto
    logklon moyoto varchar(20) not null
    ,

    Autant dire c'est archi faux

    Toujours personne pour m'aider???
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    981
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut
    Pour la structure i.e. répétition pour chaque ligne du nombre de chaînes de caractères et du nombre d'espaces à ne pas confondre avec le nombre de caractères d'espace:

    idlong toto integer not null,
    logklon moyoto varchar(20) not null,
    idpoio toto integer not null,
    logklon moyoto integer not null,
    la RegEx de
    • Rehcerche : (^id.+)+(\s)+(integer)+(\s)+([a-z]+)+(\s)+([a-z]+)+(,$) <=Attention aucun espace entres les commandes & opérateurs
    • Remplacement :\1 \3 unsigned \5 \7 auto increment \8 <=Attention les espaces entres les commandes sont considérés comme des caractères à ajouter



    Et voilà le résultat

    idlong toto integer unsigned not null auto increment ,
    logklon moyoto varchar(20) not null,
    idpoio toto integer unsigned not null auto increment ,
    logklon moyoto integer not null,
    Bonne lecture
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Notepad++ RegEx : Remplacement conditionnel
    Par informer dans le forum Outils
    Réponses: 1
    Dernier message: 12/03/2014, 02h06
  2. [RegEx] Faire un remplacement conditionnel
    Par guidav dans le forum Langage
    Réponses: 1
    Dernier message: 26/01/2007, 20h22
  3. Javascript : Regex !? Remplacer une chaine dont on ne connait pas la valeur
    Par adrianevens dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 12/01/2007, 17h03
  4. [Regex] Remplacement d'une chaîne avec $
    Par TSnarfK dans le forum Collection et Stream
    Réponses: 5
    Dernier message: 27/01/2006, 11h44
  5. [Regex]Remplacement d'un nombre indéfinie de motif
    Par gege2061 dans le forum Langage
    Réponses: 5
    Dernier message: 14/01/2006, 18h27

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