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

WinDev Discussion :

Extraire une chaine avec expression reguliere


Sujet :

WinDev

  1. #1
    Candidat au Club
    Inscrit en
    Mai 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 14
    Points : 2
    Points
    2
    Par défaut Extraire une chaine avec expression reguliere
    Bonsoir

    je cherche a extraire les urls d'une page en utilisant une expression reguliere
    j ai vu que dans la LST 70 il y a un exemple qui correspond à cela, quelqu un pourrait il me dire quelle est la fonction utilisée pour faire cette extraction?

    Merci d avance

    Spook

  2. #2
    Membre actif Avatar de peijnoob
    Profil pro
    Développeur informatique
    Inscrit en
    Août 2006
    Messages
    279
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 279
    Points : 294
    Points
    294
    Par défaut
    C'est la fonction VérifieExpressionRégulière()

    Voir l'aide pour plus d'infos !

  3. #3
    Candidat au Club
    Inscrit en
    Mai 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    merci pour la réponse
    il s agit bien de l exemple LST n°70 : WD ExtractionAvancée ?
    si c est le cas je suppose qu il faut tester chaque mot avec la fonction... je pensais qu il y avait ue facon plus performante...

  4. #4
    Membre expérimenté Avatar de Tober
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    824
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 824
    Points : 1 381
    Points
    1 381
    Par défaut
    je n'ai pas tout compris avec tes histoires de LST 70, mais globalement, tu veux avoir une expression régulière qui reconnait une URL ?
    Il y a plein d'expression régulière qui pourrait faire ça, mais ça dépend du niveau de précision que tu veux atteindre dans ta détection...
    tu pourrais avoir une expression reguliere très simple comme ca :
    qui repèrerait tout les textes commencant par http:// jusqu'au prochain espacement
    Mais tu peux être beaucoup plus précis...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ^http(s)?://([a-zA-Z0-9-]+.)?([a-zA-Z0-9-]+.)?[a-zA-Z0-9-]+\.[a-zA-Z]{2,4}(:[0-9]+)?(/[a-zA-Z0-9-]*/?|/[a-zA-Z0-9]+\.[a-zA-Z0-9]{1,4})?$

  5. #5
    Candidat au Club
    Inscrit en
    Mai 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    Bonjour Tober,

    Si tu es un adepte de Linux et de grep je voudrais faire en windev l equivalent d'un grep sur le contenu d un fichier pour obtenir les différentes URLS contenues dans ce fichier

    la fonction VerifieExpressionReguliere permet de verifier qu'une chaine a bien le bon format, je voulais savoir s'il existe une fonction de type Extraitchaine pouvant utiliser les expreg.

    pour mon histoire de LST, c est le magazine officiel de PC soft dans lequel sont présentés des exemples de programme. Il se trouve que le numero 70 contient un exemple qui correspond a mes attentes: seul hic, je ne l ai pas...

  6. #6
    Membre expérimenté Avatar de Tober
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    824
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 824
    Points : 1 381
    Points
    1 381
    Par défaut
    je crois comprendre ton probleme :
    Tu veux recuperer les urls d'un texte mais la fonction VérifieExpressionRégulière n'est pas vraiment faite pour ça...
    Ce que tu peux faire, c'est lire le fichier et le mettre dans un tableau de chaines (une ligne de texte = une ligne dans le tableau)
    et ensuite, pour chaque ligne tu fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    // Tu récupère l'url avec la variable 'url'
    VérifieExpressionRégulière(tableau[ligne], "(masque pour l'url)", url)
    Le probleme que tu rencontrera surement c'est que tu peux avoir plusieurs urls par ligne de texte... Si ca peut etre le cas, je te conseil d'avoir plutot un tableau pour chaque mot du texte (en esperant qu'une url ne puisse pas avoir d'espace...)
    Si t'arrives a faire ca, t'auras couvert 90% des problemes je pense.

  7. #7
    Candidat au Club
    Inscrit en
    Mai 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    Merci Tober,

    c est ce que j envisage de faire, mais tu conviendras avec moi que c'est loin d'être performant comme méthode...

    Spook

  8. #8
    Membre expérimenté Avatar de Tober
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    824
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 824
    Points : 1 381
    Points
    1 381
    Par défaut
    Ouais, J'en conviens parfaitement.
    Pour moi Windev a beaucoup d'avantage car il permet de faire plein de truc de merde rapidement, mais il n'est pas fait pour faire des choses trop compliquées...
    Bref, pour que n'importe qui avec le minimum de connaissance en algorithmique puisse faire a peu pres n'importe quoi.

  9. #9
    Membre chevronné
    Avatar de mogwai162
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 1 860
    Points
    1 860
    Par défaut
    Citation Envoyé par Tober Voir le message
    ...mais il n'est pas fait pour faire des choses trop compliquées...
    Ah zut ! Je me gourre depuis plus de 10 ans ! Pour etoffer j'ai programmé une nomenclature arborescente avec l'historique de modification de chacun des éléments et de la synthése j'ai ecrit aussi une gestion de transformation et de gestion de stock de bobines de papier et plein d'autres chose...

    Et sans me vanter ce que j'ecris fonctionne pas parce que je suis meilleur qu'un autre mais parce que j'ai 20 ans d'expérience en développement dont 10 sous Windev depuis la version 4.

    Dire qu'on ne peut pas faire quelque chose de compliqué avec windev est faux tant qu'on est capable de gérer le projet ce qui est surement pas le cas des gens qui ne savent ni programmer ni utiliser windev comme on n'en voit trop sur ce forum.

Discussions similaires

  1. Réponses: 0
    Dernier message: 11/01/2014, 12h16
  2. [RegExp] Remplacer une chaine avec l'aide des Expressions regulières
    Par Naruto_kun dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 09/02/2012, 11h45
  3. Extraire les nombres d'une chaine avec regex
    Par Alain15 dans le forum Général Java
    Réponses: 2
    Dernier message: 04/05/2011, 08h32
  4. Extraire une chaine via Expression Régulières ?
    Par Fikou-Sama dans le forum VB.NET
    Réponses: 3
    Dernier message: 11/09/2009, 16h58
  5. Réponses: 2
    Dernier message: 30/01/2006, 12h05

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