Accéder au contenu principal Passer au contenu complémentaire

Modifier des expressions individuelles

Pourquoi et quand exécuter cette tâche

L'exemple suivant vous montre l'utilisation de l'Expression Builder pour modifier deux expressions individuelles.

Exemple de Job utilisant les composants tMap, tMysqlInput, tFileInputDelimited et tLogRow.

Dans cet exemple, deux flux d'entrée sont connectés au tMap.

  • Un premier flux DB input, contenant une liste de personnes dont le nom et le prénom sont séparés par un espace.

  • Un autre flux File input, contenant la liste des états des États-Unis, en minuscule.

Dans le Map Editor, utilisez l'Expression builder pour : 1) Remplacer l'espace entre le nom et le prénom par un tiret souligné ; 2) Mettre en majuscules le nom des états.

Procédure

  1. Dans le Map Editor, créez la jointure Inner Join correspondante pour créer le mapping de référence.
    Pour plus d'informations concernant le tMap, consultez Présentation du fonctionnement du tMap et Mapping de flux de données.
  2. Déposez la colonne Names du flux d'entrée principal Main (row1) de la zone Input dans la zone Output, et la colonne State du flux d'entrée secondaire Lookup (row2) vers la même zone Output.
  3. Cliquez sur le premier champ Expression (row1.Name) puis cliquez sur le bouton [...] qui s'affiche à côté de l'expression.
    Emplacement du bouton '...'.

    La fenêtre [Expression Builder] s'ouvre.

    Vue d'ensemble de la boîte de dialogue Expression Builder.
  4. Dans la liste Category, sélectionnez l'action que vous souhaitez effectuer. Pour cet exemple, choisissez StringHandling, puis sélectionnez la fonction EREPLACE dans la liste Functions.
  5. Dans la zone Expression, collez row1.Name à la place du texte, pour obtenir : StringHandling.EREPLACE(row1.Name," ","_"). Cette expression remplacera l'espace par un tiret souligné dans la chaîne de caractères fournie.
    Notez que les fonctions CHANGE et EREPLACE de la catégorie StringHandling sont utilisées pour substituer toutes les sous-chaînes de caractères correspondant à l'expression régulière donnée dans l'ancienne chaîne de caractères, par le remplacement donné et retourner une nouvelle chaîne de caractères. Leurs trois paramètres sont :
    • oldStr : l'ancienne chaîne de caractères.
    • newStr : l'expression régulière avec laquelle effectuer la correspondance.
    • replacement : la chaîne de caractères à substituer pour chaque correspondance.
  6. Vérifiez que votre sortie est correcte en renseignant dans le champ Value correspondant dans la zone Test, une valeur factice, par exemple Chuck Norris et en cliquant sur Test!. Vérifiez que les changements ont bien été effectués, ici : Chuck_Norris.
  7. Cliquez sur OK pour valider et répétez la même opération pour la deuxième colonne (State).
  8. Dans le tMap de sortie, sélectionnez l'expression row2.State et cliquez sur le bouton [...] pour ouvrir de nouveau l'Expression builder.
    Vue d'ensemble de la boîte de dialogue Expression Builder.

    Cette fois, la fonction StringHandling à utiliser est UPCASE. L'expression complète est : StringHandling.UPCASE(row2.State).

  9. Vérifiez à nouveau que la syntaxe de votre expression est correcte, en saisissant une valeur factice, par exemple indiana dans le champ Value de la zone Test. Cliquez sur Test! et le résultat affiché est INDIANA. Cliquez sur OK pour valider les modifications.

    Les deux expressions sont maintenant affichées dans le champ tMap Expression.

    Éditeur de maps.

Résultats

Ces changements seront reportés tout au long du processus et le flux de sortie est affiché ci-dessous. La sortie de cet exemple s'affiche comme suit :

Exemple de résultats.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – faites-le-nous savoir.