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

VB.NET Discussion :

Chercher dans une textbox / rich [Débutant]


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2011
    Messages : 35
    Par défaut Chercher dans une textbox / rich
    Bonjour,

    Je suis en train de faire un petit outils en vb.net mais j'ai un petit soucis (gros en fait :p)

    Je voudrais chercher dans une textbox (j'utilise une rich mais ca doit etre le meme fonctionnement) un bout de texte entre 2 bouts de texte. Je vais m'expliquer avec un exemple :

    J'ai récupéré le code source d'une page, et mit dans une RichTextBox, la ligne qui m'interesse est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <param name="flashvars" value="render=direct&look={1|71,1343,1340,1353|5=15388778,2=5789938,4=11941144,1=8636335,3=11834791|115|1@0={196|||75}}" />
    Là je voudrais pouvoir récuperer les données apres {1|71, jusqu'a la prochaine virgule (c'est à dire recuperer juste 1343) et le placer dans une textbox. Ce chiffre differe suivant la page où l'ont pas donc je ne peut pas utiliser directement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     RichTextBox1.SelectionStart = RichTextBox1.Find("1343")
    Je cherche donc une alternative (je me debrouillerais apres pour récuperer les 2 nombres suivants

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 104
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Dim taValeur = "1|71,1343,1340,1353|5=15388778,2=5789938,4=11941144,1=8636335,3=11834791|115|1@0={196|||75}}"
    Dim donnees As String() = taValeur.Split(",")
    Dim taDonneeARecuperer = donnees(1)

  3. #3
    Membre Expert
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    700
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 700
    Par défaut
    Bonjour,
    ou avec une expression régulière :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
        Private Sub btncherchval_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btncherchval.Click
     
            '*** Le texte à analyser, ici un RichTextBox.
            Dim source As String = rtbCode.Text
            '*** Le modèle d'expressions rationnelles d'analyse
            Dim modèle As String = "(?<=(\{1\|71,)(\d+,)*)\d+"
            '*** Compile the regular expression.
            Dim r As New Regex(modèle)
     
            '*** Recherche toutes les occurences dans le texte, correspondant au modèle.
            Dim mcReCherchText As MatchCollection = r.Matches(source)
     
            '*** Teste
            If mcReCherchText.Count > 0 Then
                For Each it In mcReCherchText
                    MessageBox.Show(it.ToString)
                Next
            Else
                MessageBox.Show("aucune occurence trouvée")
            End If
        End Sub
    Ne pas oublier l'import :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Imports System.Text.RegularExpressions
    On utilise une postanalyse.
    La recherche porte sur une suite de chiffre \d+.
    Elle doit être précédée, sans capture (?<=) par les termes suivants:
    (\{1\|71,)(\d+,)*, soit un ensemble de caractères{1|71, éventuellement suivi d'une suite de chiffre et une virgule (\d+,)*.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 36
    Par défaut
    Bonjour,
    Tu peux aussi essayer ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Dim source As String = rtbCode.Text
    Dim chiffre as string
    dim positionDepart as string
    dim positionFin as string
    positionDepart = instr(1,"{1|71",source)+6
    positionFin=instr(1,",",source)-1
    chiffre=mid(source,positionDepart,positionFin)

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2011
    Messages : 35
    Par défaut
    Merci a tous ! Je vais essayer un peu plus tard. Vos codes ont l'air d'etre bon pour mon probleme !

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

Discussions similaires

  1. Chercher dans une TextBox
    Par flouo dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 24/01/2014, 10h59
  2. Affichage dans une textbox
    Par philo71 dans le forum MFC
    Réponses: 25
    Dernier message: 30/01/2006, 09h34
  3. [Javascript] appui sur la touche entrée dans une textbox
    Par LE NEINDRE dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 02/01/2006, 11h19
  4. Mettre une date par defaut dans une textBox.
    Par yaumme dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 01/12/2005, 22h39
  5. [c#]Gros text à afficher dans une textbox
    Par famemaur dans le forum ASP.NET
    Réponses: 3
    Dernier message: 04/05/2005, 10h12

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