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 :

Utilisation du Regex (extraire une valeur Hexadécimale et autres)


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2012
    Messages
    640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mars 2012
    Messages : 640
    Par défaut Utilisation du Regex (extraire une valeur Hexadécimale et autres)
    Bonsoir à tous,
    Le Regex c'est très puissant mais j'ai beaucoup de difficultés pour écrire le Pattern, je me suis arretté car je n'y arrive plus au niveau de la valeur hexadécimale (juste après 0x). (La ligne de code que j'ai écrite est donc fausse)
    Pouvez vous m'aider ?

    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
     
    Imports System.Text.RegularExpressions
    Private Sub Test
    Dim Stream1 As String = "    Stream #0:0[0x1100]: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p, 1440x1080 [SAR 4:3 DAR 16:9], 30.17 fps, 25 tbr, 90k tbn, 50 tbc"
            Dim Stream2 As String = "    Stream #0:1[0x1101](fra): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz, stereo, s16, 256 kb/s"
            Dim Stream3 As String = "    Stream #0:2[0x1102](deu): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz, stereo, s16, 256 kb/s"
     
            ' Rechercher des Streams et extraction des données :
            re = New Regex("^(    Stream #)([0-9]+:[0-9]+)(\[)(0x)([ABCDEF0123456789]{1,4})")
            m = re.Match(Stream1)
            Debug.Print(m.Groups(1).ToString) ' Une piste a été détectée.
            Debug.Print(m.Groups(2).ToString)  ' Contient le numéro de piste y dans le fichier x (x:y)
            Debug.Print(m.Groups(3).ToString)  ' "["
            Debug.Print(m.Groups(4).ToString)  ' "0x"
            Debug.Print(m.Groups(5).ToString)  ' N° de PID en hexadecimal
    End Sub
    Si de plus quelqu'un a du courage pour allez jusqu'au bout, ça m'aiderait beaucoup.
    Le but est d'extraire les valeurs :
    - Type de Stream : (Video ou Audio)
    - Numéro de piste (ex: 0:1)
    - Numéro de PID en Hexadécimale : (Ex : 1100, 1101 , 1102)
    - Le Codec Audio ou Vidéo (h264, mp2)
    - La langue (Ex: fra ou deu)

    Merci beaucoup si vous pouvez m'aider.

  2. #2
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2012
    Messages
    640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mars 2012
    Messages : 640
    Par défaut
    Bon, et bien fait ma ligne fonctionne. C'est a force d'avoir la tête dans les lignes de code, je ne sais plus ce que je fait.

    je ne connaissais pas le Regex, c'est un peu difficile a utiliser au début mais c'est génial comme outil, ça évite d'utiliser les fonctions de chaines et quand on reprend le code 1 an après on ne sais plus ce que l'on a voulu faire.

    je pense que j'arriverais a allez au bout.
    Désolé et bonne soirée.

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

Discussions similaires

  1. Utilisation de ctypes pour extraire une valeur/un tableau
    Par XeO3n dans le forum Interfaçage autre langage
    Réponses: 1
    Dernier message: 04/07/2012, 00h33
  2. Base de données: extraire une valeur de champ
    Par jdudoret dans le forum Bases de données
    Réponses: 3
    Dernier message: 03/07/2006, 11h35
  3. Extraire une valeur entiere d'une chaine de caractere
    Par Aloneghost dans le forum Débuter
    Réponses: 2
    Dernier message: 25/04/2006, 12h23
  4. Extraire une valeur RDF en javascript?
    Par greg49 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 11/04/2006, 08h49
  5. Extraire une valeur d'une ligne avec sed
    Par jojolepabo dans le forum Linux
    Réponses: 6
    Dernier message: 27/10/2004, 09h34

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