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

Windows Forms Discussion :

[VS2005][VB.NET]détection de chaines de caractères dans un fichier texte


Sujet :

Windows Forms

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 137
    Points : 38
    Points
    38
    Par défaut [VS2005][VB.NET]détection de chaines de caractères dans un fichier texte
    salut tout le monde!
    J'ai toujours le même souci avec la détection d'une chaine de caractère dans un fichier texte.
    j'ai essayé les expressions régulières avec la méthode regex mais cela n'aboutit pas au résultats souhaités.
    Dans un fichier texte je dois détecter une chaine de caractère comprise entre "SG_ " ([A-Za-z][_][\s]) et ":" ([:]) et je ne parviens pas jusqu'à présent à le faire correctement.

    exemple de lignes où je détecte cette chaine de caractères:
    SG_ CMPT_PROC4 :
    SG_ CHECK_SUM_CMD_BRI_1 :

    j'ai ecri ce code
    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
    22
    23
    24
    25
    26
    27
        Public Function Func1(ByVal line As String) As String
            Dim r As New RegularExpressions.Regex("[0-9]+", RegularExpressions.RegexOptions.Compiled)
            Return r.Match(line).Groups(0).Value
        End Function
     
        Public Function Func2(ByVal line2 As String) As String
            Dim r As New RegularExpressions.Regex("[_][\s][a-zA-Z0-9]+[_]?[a-zA-Z0-9]+", RegularExpressions.RegexOptions.Compiled)
            Return r.Match(line2).Groups(0).Value
        End Function
     
        Public Sub lecture(ByVal fichier As String)
            Do
                ligne = SR.ReadLine()
            Loop Until (str = ligne.IndexOf("BO_"))
            ID = Func1(ligne)
            SW.WriteLine(ID)
            SW.WriteLine("ID_received  =" & ID)
            Do
                If str = ligne.IndexOf("BO_") Then
                    ligne2 = SR.ReadLine()
                    donnée = Func2(ligne2)
                    SW.WriteLine("Dim" & donnée & " as integer")
                End If
            Loop Until chaine <> ligne2.IndexOf(" SG_") '& ligne2.LastIndexOf(":")
            SR.Close()
            SW.Close()
        End Sub
    et sur le fichier texte j'ai:

    70
    ID_received =70
    Dim_ CMPT_PROC4 as integer
    Dim_ CHECK_SUM as integer
    Dim_ SBRI1_2 as integer
    Dim_ SBRI1_1 as integer
    Dim_ SBRI1_0 as integer
    Dim_ SBRI5_2 as integer
    Dim_ SBRI5_3 as integer
    Dim_ SBRI5_1 as integer
    Dim_ int_anti as integer
    Dim_ int_anti as integer
    Dim as integer

    mais j'ai toujours "l'underscore" (_) au début et j'arrive pas à récupérer une longue chaine comme : CHECK_SUM_CMD_BRI_1 et je récupère juste CHECK_SUM.
    j'ai bien fouillé dans les expressions régulières mais j'ai pas trouvé de solutions parfaites pour cette application.
    je viens de tester
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    chaine_test = ligne2.IndexOf("SG_") & "" & ligne2.EndsWith(":")
    mais pas de résultats.
    j'attends vos idées et solutions et merci d'avance.

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 137
    Points : 38
    Points
    38
    Par défaut
    toujours pas de réponses.....!

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 137
    Points : 38
    Points
    38
    Par défaut
    j'attend vos solutions svp ...

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 137
    Points : 38
    Points
    38
    Par défaut
    comment je pourrais utiliser Groupcollection pour sa ?

Discussions similaires

  1. Récupérer une chaine de caractères dans un fichier texte
    Par neutrall dans le forum Entrée/Sortie
    Réponses: 5
    Dernier message: 31/05/2011, 00h37
  2. Réponses: 1
    Dernier message: 05/11/2009, 15h19
  3. Remplacer une chaine de caractère dans un fichier texte.
    Par Empty_body dans le forum VBA Access
    Réponses: 1
    Dernier message: 19/01/2008, 11h16
  4. Réponses: 3
    Dernier message: 08/10/2006, 06h20
  5. Réponses: 3
    Dernier message: 25/07/2006, 08h40

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