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

C# Discussion :

Regex : Parser un fichier pour retrouver des tags précis et les grouper


Sujet :

C#

  1. #1
    Membre du Club
    Inscrit en
    Septembre 2003
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 60
    Points : 57
    Points
    57
    Par défaut Regex : Parser un fichier pour retrouver des tags précis et les grouper
    Bonjour,

    Voilà, j'ai besoin de créer un parser me permettant dans un fichier txt de retrouver un ensemble de tags précis, comprenant divers attributs... pour ce faire je souhaite utiliser une regex.

    Mes tags aurait la structure suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <#(type de contrôle, alphanumérique) classId=(entier) keyId=(alphanumérique) templateId=(alphanumérique)>
    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <#List classId=902 keyId=90bleu templateId=Program>
    A l'aide d'expresso, j'ai créé la regex suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (?<control>(?<=\<#)\w+)\s+(?<classid>(?<=ClassId=)\d+)\s+(?<keyid>(?<=KeyId=)\w+)\s+(?<templateid>(?<=TemplateId=)\w+)\s+>
    En prenant les groupes un par un, je retrouve ce que je veux, mais je n'arrive pas à valider la totalité de la chaîne, quelqu'un aurait une piste ? je ne suis pas un grand adepte des regex...

    Merci :p

  2. #2
    Membre du Club
    Inscrit en
    Septembre 2003
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 60
    Points : 57
    Points
    57
    Par défaut
    Pas de grands gourous de la regex dans le coin ? une piste ?

    raaahh...

    J'ai testé avec ceci : \<#.*>

    Je retrouve bien la totalité de mon tag, mais ça veut dire que je serais obligé ensuite de le reparser... j'aimerais bien déjà créé des groupes utilisables avec une regex... quelqu'un a une idée ?

    Merci beaucoup !

    Damien

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2003
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 60
    Points : 57
    Points
    57
    Par défaut
    Ah ! je me discute tout seul

    Bon, cela semble correctement fonctionner dorénavant en mettant ce pattern :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    \<\#(?<control>\w+)\ +ClassId=(?<classid>\d+)\ +KeyId=(?<keyid>\w+)\ +TemplateId=(?<templateid>\w+)\s?>
    Par contre, y a-t-il un moyen de pouvoir récupérer ces groupes d'attributs quelque soit leur position dans le tag initial ?

    Merci

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 4
    Points : 6
    Points
    6
    Par défaut regex saut de ligne avec condition
    Bonjour,
    je suis débutant dans les regex, en fait j'ai un texte dans lequel j'aimerai supprimer les sauts de ligne sauf pour la ligne numéro "n".
    Pourriez vous me dire comment le faire en regex?

    Merci.

Discussions similaires

  1. Parser un fichier xml avec des tag names contenant ":" !
    Par sofien dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 26/11/2010, 10h40
  2. Réponses: 3
    Dernier message: 10/05/2007, 14h12
  3. Parser une page pour remplaçer des mots par d'autres
    Par HALOMOTO dans le forum Langage
    Réponses: 13
    Dernier message: 13/07/2006, 22h58
  4. fonction pour enlever des tags
    Par sunp dans le forum API standards et tierces
    Réponses: 14
    Dernier message: 19/12/2005, 20h47
  5. [débutant] filtrer un fichier pour afficher des infos
    Par Valichou dans le forum API standards et tierces
    Réponses: 7
    Dernier message: 21/04/2004, 11h44

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