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

Linux Discussion :

GAWK regexp négation d'une chaine


Sujet :

Linux

  1. #1
    Nouveau membre du Club
    Inscrit en
    Novembre 2004
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 34
    Points : 29
    Points
    29
    Par défaut GAWK regexp négation d'une chaine
    Salut,
    Ben mon problème parait apriori simple mais je ne trouve pas comment le solutionner.

    je voudrais en analysant un fichier trouver les lignes qui ne possèdent pas la chaine "exemple".

    bon j'ai essayé quelques trucs qui ne fonctionnent pas
    $0 ~ /[^(exemple)]/ {print $0}
    $0 ~ /[^e][^x][^e][^m][^p][^l][^e]/ { print $0}


    rien à faire je ne trouve vraiment pas la bonne regexp.

    Si vous pouvez m'aider svp.

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 34
    Points : 41
    Points
    41
    Par défaut
    bonjour
    comme ceci :
    !/exemple/

  3. #3
    Nouveau membre du Club
    Inscrit en
    Novembre 2004
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 34
    Points : 29
    Points
    29
    Par défaut
    Citation Envoyé par Alain.g Voir le message
    bonjour
    comme ceci :
    !/exemple/
    merci j ai fais ceci a partir de ta réponse:

    $0 !~ /exemple/

    cela fonctionne parcontre ce que j'ai oublié de dire c'est que je voudrais que dans la meme regexp il y ait plus de tests.

    Je donne un exemple:

    j ai monfichier img.html avec ces quelques lignes:

    <img="im1.gif" alt="ceci est l image 1">
    <a href="..." >lien</a>
    <img="im1.gif" border=0>

    bon en faite je voudrais que ma regexp puisse trouver toute les images qui ne possèdent pas d'attribut alt.
    si je fais avec : $0 !~ /alt/
    le soucis est que il me donnera la balise "a" aussi tandis que je ne veux que les images.

    en faite en mettant une négation en dehors de la regexp cela m'empeche d'ajouter d'autres tests, si tu vois ce que je veux dire.

  4. #4
    Nouveau membre du Club
    Inscrit en
    Novembre 2004
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 34
    Points : 29
    Points
    29
    Par défaut
    c'est bon j'ai trouvé!

    je fais

    $0 !~ /alt/ && $0 ~ /img/
    {
    ...
    }

    merci encore.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 34
    Points : 41
    Points
    41
    Par défaut
    Citation Envoyé par sletis Voir le message
    merci j ai fais ceci a partir de ta réponse:

    $0 !~ /exemple/
    en fait "$0 ~" n'est pas nécessaire, on peut faire directement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    !/alt/ && /img/ { ... }

  6. #6
    Nouveau membre du Club
    Inscrit en
    Novembre 2004
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 34
    Points : 29
    Points
    29
    Par défaut
    Citation Envoyé par Alain.g Voir le message
    en fait "$0 ~" n'est pas nécessaire, on peut faire directement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    !/alt/ && /img/ { ... }
    ok parfait ben c'est encore mieux

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

Discussions similaires

  1. [RegEx] regexp pour couper une chaine en tableau
    Par jonpol45 dans le forum Langage
    Réponses: 2
    Dernier message: 30/11/2008, 10h29
  2. [regexp] supprimer la fin d'une chaine
    Par novices dans le forum Langage
    Réponses: 3
    Dernier message: 22/08/2006, 22h23
  3. Regexp : impossible d'enlever un caractere de fin à une chaine
    Par dukesgf dans le forum Collection et Stream
    Réponses: 8
    Dernier message: 18/08/2006, 16h19
  4. [Regex]Match d'une regexp avec une chaîne avec caractères spéciaux
    Par gdawirs dans le forum Collection et Stream
    Réponses: 13
    Dernier message: 25/11/2005, 12h24
  5. Réponses: 8
    Dernier message: 02/11/2005, 14h16

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