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 :

Variante de code (regex)


Sujet :

C#

  1. #1
    Membre régulier
    Profil pro
    Débutant
    Inscrit en
    Février 2007
    Messages
    127
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Débutant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2007
    Messages : 127
    Points : 87
    Points
    87
    Par défaut Variante de code (regex)
    Bonjour à tous.

    Actuellement j'utilise le code suivant pour récupérer l'adresse de l'icone d'un lien depuis une ligne complète d'une balise <a .....>Nom</a>

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    public static string GetIconUrl(string str)
    {
    	string iconUrl = Regex.Match(str, "ICON_URI=\"[^\"]*\"", RegexOptions.IgnoreCase).ToString();
    	iconUrl = iconUrl.Replace("ICON_URI=\"", "");
    	iconUrl = iconUrl.Replace("\"", "");
     
    	return iconUrl;
    }
    Existe-t-il une autre fonction qui me permettrait d'obtenir directement l'url de l'icone en ne prenant que ce qu'il y a entre les "" de
    ICONE_URI="url_de_l_icone"?

    Auriez-vous également un bon cours ou tuto pour les regex?

    Merci de votre aide

  2. #2
    Membre actif
    Homme Profil pro
    Developpeur
    Inscrit en
    Février 2013
    Messages
    180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Developpeur

    Informations forums :
    Inscription : Février 2013
    Messages : 180
    Points : 271
    Points
    271
    Par défaut
    Bonjour,

    l'utilisation de regex dans ton cas, n'est pas un mauvais choix pour moi puisque tu cherche quelque de vraiment spécifique.
    pour les regex le cour de ce forum est bien fait je trouve
    http://lgmorand.developpez.com/dotnet/regex/
    après j'utilise le site regex101 pour faire mes test https://regex101.com/

  3. #3
    Membre régulier
    Profil pro
    Débutant
    Inscrit en
    Février 2007
    Messages
    127
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Débutant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2007
    Messages : 127
    Points : 87
    Points
    87
    Par défaut
    Ok mais comment puis-je, avec le regex et sans string.replace obtenir uniquement ce qu'il y a entre balise?

    Pour le parseur, comment dois-je aborder éventuellement la problématique?

  4. #4
    Membre régulier
    Profil pro
    Débutant
    Inscrit en
    Février 2007
    Messages
    127
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Débutant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2007
    Messages : 127
    Points : 87
    Points
    87
    Par défaut
    Bon j'ai encore avancé un peu mais toujours un problème dans la regex qui est sensée me récupérer tous les attributs d'un liens

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var reg = Regex.Matches(str,"(([A-Za-z_-]*)=\"(.*?\"))", RegexOptions.IgnoreCase);
    Comment puis-je traiter le résultat de la regex afin de la mettre dans un dictionnary<string, string>??

    Merci pour vos aides

    Question subsidiaire: comment change-t-on le titre de la discussion?

  5. #5
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Points : 9 743
    Points
    9 743
    Billets dans le blog
    3
    Par défaut
    Pour changer le titre de la discussion tu peux utiliser le bouton "Modifier le message" qui se situe en-dessous du premier message de cette discussion, sur la droite.
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  6. #6
    Membre régulier
    Profil pro
    Débutant
    Inscrit en
    Février 2007
    Messages
    127
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Débutant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2007
    Messages : 127
    Points : 87
    Points
    87
    Par défaut
    Citation Envoyé par DotNetMatt Voir le message
    Pour changer le titre de la discussion tu peux utiliser le bouton "Modifier le message" qui se situe en-dessous du premier message de cette discussion, sur la droite.
    Merci

    Pour le reste j'aurais voulu pouvoir avoir la même chose que sur le site https://regex101.com/r/yF1zM9/1 Surtout le match information qui me permettrait de ne récupérer qu les données 2 et 3 ( c'est à dire ma balise et la valeur de la balise)

    En tout cas Merci beaucoup

Discussions similaires

  1. Réponses: 9
    Dernier message: 27/02/2014, 19h25
  2. De la rapidité du code
    Par jfloviou dans le forum Contribuez
    Réponses: 233
    Dernier message: 29/05/2009, 02h17
  3. [MFC](encapsulation ADO) ou placer le code
    Par philippe V dans le forum MFC
    Réponses: 2
    Dernier message: 13/06/2002, 14h58
  4. Explorateur de code C
    Par Zero dans le forum C
    Réponses: 14
    Dernier message: 06/06/2002, 09h41
  5. OmniORB : code sous Windows et Linux
    Par debug dans le forum CORBA
    Réponses: 2
    Dernier message: 30/04/2002, 17h45

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