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

Scripts/Batch Discussion :

Récupérer du texte avec une regex


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté

    Profil pro
    Enseignant
    Inscrit en
    Juillet 2003
    Messages
    296
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juillet 2003
    Messages : 296
    Par défaut Récupérer du texte avec une regex
    Bonjour !
    Je sèche depuis quelques jours sur la transformation d’un texte via une regex. Avant, ça marchait bien, mais depuis que j’ai intégré une boucle, j’ai des résultats bizarres…

    J’attaque une DB Access pour récupérer une liste d’éléments. Je veux transformer chaque item de cette liste via une regex et les ajouter dans une autre liste.

    Code PowerShell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    while(!$rs2.EOF){    if ( $rs2.Fields.Item(0).Value -match "^0([0-9])(.*)A$"){
            $stu.Groups.Add($Matches.2 +"-" +$Matches.1)
        }
         rs2.MoveNext()
    }
    rs2 est un resultSet contenant du texte du style 01ABAHA, 02ABAHA… que je souhaite transformer en ABAH-1, ABAH-2… pour les mettre dans ma classe perso.

    Le problème est que j’obtiens comme résultat uniquement {-} comme résultat. En débug, il passe bien dans ma boucle, il passe le if (donc le match est OK), mais il ne récupère pas la transformation… pourtant la variable automatique $Matches contient les données.

    Merci de votre aide,

  2. #2
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Je ne vois pas de problème, tu peux essayer comme ca sinon

    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    "$($Matches.2)-$($Matches.1)"
    ou
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    "$($Matches[2])-$($Matches[1])"

    Le problème viens de la ? $stu.Groups.Add(...

    Sinon assigne a une variable intermédiaire et vérifie son contenu
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $test = "$($Matches.2)-$($Matches.1)"
    $stu.Groups.Add($test)

Discussions similaires

  1. Récupérer du texte sur une page obtenu avec le l'API wikipedia
    Par Augustin Soulard dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 08/01/2021, 19h48
  2. Récupérer des données qui se suivent avec une RegEx
    Par jpascal dans le forum Langage
    Réponses: 4
    Dernier message: 02/07/2020, 10h01
  3. [Qt WebEngine] Récupérer le texte d'une page web avec QWebEnginePage
    Par dasycarpum dans le forum Moteurs Web
    Réponses: 4
    Dernier message: 31/01/2020, 22h16
  4. Comment extraire du texte avec une regex
    Par bapi777 dans le forum Langage
    Réponses: 11
    Dernier message: 26/09/2016, 19h14
  5. Récupérer le texte d'une query avec paramètres remplacés
    Par exyacc dans le forum Bases de données
    Réponses: 7
    Dernier message: 31/10/2008, 13h37

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