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

Power BI Discussion :

POWER BI : Extraire une chaîne de caractère depuis une colonne


Sujet :

Power BI

  1. #1
    Candidat au Club
    Homme Profil pro
    Superviseur de Hotline
    Inscrit en
    Février 2024
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Superviseur de Hotline

    Informations forums :
    Inscription : Février 2024
    Messages : 2
    Points : 2
    Points
    2
    Par défaut POWER BI : Extraire une chaîne de caractère depuis une colonne
    Bonjour à tous,

    Je souhaiterai extraire une chaîne de caractères dans une colonne qui se compose de plusieurs caractères.

    Exemple : la colonne "technicien" contient les caractères suivants :
    Ligne 1 : Technicien1, SDIS38, Technicien2
    Ligne 2 : Technicien1, SDIS12
    Ligne 3 : SDIS09, Technicien1, Technicien2

    Je souhaiterai récupérer la chaîne de caractères SDISxx sachant que cette chaîne de caractères n'est jamais placé au même endroit dans la colonne "Technicien" et les valeurs "Technicienx" n'ont pas non plus le même nombre de caractères.

    Merci pour votre aide.

  2. #2
    Membre du Club
    Homme Profil pro
    développeur MSBI
    Inscrit en
    Juin 2018
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : développeur MSBI

    Informations forums :
    Inscription : Juin 2018
    Messages : 27
    Points : 40
    Points
    40
    Par défaut
    Bonjour,
    voici un exemple de code à appliquer dans l'éditeur avancé, mais y en a d'autres façons de le faire.

    // #"etape_avant" = c'est l'étape d'avant

    #"Fractionner_les_colonnes" = Table.SplitColumn(#"etape_avant", "Technicien", Splitter.SplitTextByDelimiter(",", QuoteStyle.None), {"Technicien.1", "Technicien.2", "Technicien.3"}),
    #"extraire_les_caracteres" = Table.TransformColumns
    ( #"Fractionner_les_colonnes",
    {
    {"Technicien.1",each if Text.Contains(_,"SDIS")=true then (_) else ""},
    {"Technicien.2",each if Text.Contains(_,"SDIS")=true then (_) else ""},
    {"Technicien.3",each if Text.Contains(_,"SDIS")=true then (_) else ""}
    }
    ),
    #"regrouper_les colonnes" = Table.AddColumn
    ( #"extraire_les_caracteres",
    "Technicien", each [Technicien.1]&[Technicien.2]&[Technicien.3]),

    #"Autres colonnes supprimées" = Table.SelectColumns
    (#"regrouper_les colonnes",{"Technicien"}),

    #"Type modifié1" = Table.TransformColumnTypes
    (#"Autres colonnes supprimées",{{"Technicien", type text}})
    in
    #"Type modifié1"
    cdt,

  3. #3
    Membre émérite
    Homme Profil pro
    ingénieur
    Inscrit en
    Mars 2015
    Messages
    1 065
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : ingénieur
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2015
    Messages : 1 065
    Points : 2 533
    Points
    2 533
    Par défaut
    Bonjour

    plus simplement, ajouter une nouvelle colonne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Text.Middle([Technicien],Text.PositionOf([Technicien],"SDIS"),6)
    pour prendre les 6 caractères à partir de la position de "SDIS"

    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    List.Select(Text.Split([Technicien],", "), each Text.StartsWith(_,"SDIS")){0}
    en découpant suivant les ", " (à voir s'il y a un espace ou non après les ,) et sélectionner le 1er SDISxx

    ou encore
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "SDIS"&Text.BetweenDelimiters([Technicien], "SDIS", ",")
    pour prendre les caractères après le SDIS et avant la , en ajoutant SDIS pour compléter le code

    Stéphane

Discussions similaires

  1. Extraire une colonne spécifique d'un fichier
    Par walos dans le forum Fortran
    Réponses: 5
    Dernier message: 20/09/2012, 15h46
  2. Réponses: 1
    Dernier message: 16/08/2011, 17h46
  3. Réponses: 3
    Dernier message: 16/04/2009, 15h00
  4. Réponses: 7
    Dernier message: 19/11/2008, 14h31
  5. Réponses: 2
    Dernier message: 18/11/2008, 17h08

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