Help Center
Bienvenue au centre d’aide WalkMe

Please login in order to continue:

Work flows better with WalkMe
Work flows better with WalkMe.

Qu’est-ce que les Regex ?

Last Updated novembre 19, 2024

Aperçu rapide

Les expressions régulières, appelées regex, vous permettent de manipuler du texte dynamique qui apparaît dans le contenu WalkMe ou qui fait partie de processus automatisés. L'utilisation La syntaxe regex est idéale pour les situations où les valeurs de texte dynamique que vous utilisez contiennent à la fois les valeurs souhaitées et d'autres caractères qui ne sont pas pertinents.

En savoir plus sur les expressions rationnelles (regex).

Cas d'utilisation

Les cas d'utilisation des regex sont les suivants :

  • Lorsque le texte dynamique comprend le prénom et le nom de famille d'un utilisateur, utilisez une expression rationnelle pour sélectionner et afficher uniquement son prénom dans un ShoutOut ou un ballon afin de le rendre plus personnel (affichage visuel).
  • Remplir automatiquement l'adresse électronique de vos utilisateurs (lorsqu'elle fait partie d'un objet plus grand contenant des données supplémentaires) dans un champ de texte lors du chargement de la page (automatisation).
  • Ne sélectionner qu'une partie de l'URL lors de l'utilisation d'un texte dynamique pour amener automatiquement l'utilisateur à une autre page

Exemple de cas d'utilisation

Un client souhaite qu'un SmartTip s'affiche lorsqu'un élément à l'écran indiquant une date est antérieur ou égal au 31 janvier 2019.

Comment résoudre le problème :

  1. Décrivez les valeurs possibles que vous voulez faire correspondre et celles que vous ne voulez pas faire correspondre.
  2. Divisez le problème en plusieurs groupes de règles qui, une fois combinées, englobent toutes les valeurs que vous souhaitez faire correspondre.
    1. Dans cet exemple, nous avons quatre modèles différents que nous voulons faire correspondre :
      1. Toutes les dates en janvier 2019
      2. Toute date entre le 1er janvier 2010 et le 31 décembre 2018
      3. Toute date entre le 1er janvier 2000 et le 31 décembre 2009
      4. Toute date entre le 1er janvier 0000 et le 31 décembre 1999
  3. Formulez les règles pour traiter chacun des cas ci-dessus et testez-les :
    1. ^Jan[\s]+[0123]?[\d]+,[\s]+2019$
    2. ^[\w]+[\s]+[0123]?[\d]+,[\s]+201[012345678]$
    3. ^[\w]+[\s]+[0123]?[\d]+,[\s]+200[0123456789]$
    4. ^[\w]+[\s]+[0123]?[\d]+,[\s]+[01][\d]{3}$
  4. Après avoir testé chaque groupe, combinez-les en une seule chaîne à l'aide de la pipe (supprimez les ^ et les $ excédentaires).
    • ^Jan[\s]+[0123]?[\d]+,[\s]+2019|[\w]+[\s]+[0123]?[\d]+,[\s]+201[012345678]|[\w]+[\s]+[0123]?[\d]+,[\s]+200[0123456789]|[\w]+[\s]+[0123]?[\d]+,[\s]+[01][\d]{3}$
  5. Implémentez le RegEx ci-dessus dans la règle du segment d'affichage du SmartTip en utilisant :
    • OSE/jQuery > Le texte est par expression régulière > ^Jan[\s]+[0123]?[\d]+,[\s]+2019|[\w]+[\s]+[0123]?[\d]+,[\s]+201[012345678]|[\w]+[\s]+[0123]?[\d]+,[\s]+200[0123456789]|[\w]+[\s]+[0123]?[\d]+,[\s]+[01][\d]{3}$
  6. Résultat : Le SmartTip s'affichera lorsque la valeur du texte de l'élément sera comprise entre le 1er janvier 0000 et le 31 janvier 2019.

Comment ça marche

Commencez par une balise d'ouveture de regex contenant l'expression régulière, suivie de l'énoncé auquel que vous souhaitez appliquer l'expression régulière et terminez par une balise de fermeture de regex :

[regex=" {l'expression rationnelle elle-même} "] {texte sur lequel effectuer la regex}[/regex]

Note

  • {texte sur lequel effectuer la regex} peut être un mélange de plusieurs valeurs de texte dynamiques, telles que des variables, des cookies, des données WalkMe et jQuery, ainsi que des valeurs statiques.
  • La plupart, sinon toutes les utilisations de texte dans les expressions rationnelles seront dynamiques, avec une utilisation minimale de valeurs de texte statiques.

Prise en charge de l'utilisation des expressions rationnelles (regex) chez WalkMe

Types de règles du moteur de règles :

  • Élément sélectionné
  • URL
  • Attributs de l'utilisateur
  • jQuery
  • Élément sur l'écran
  • Variable (données de l'utilisateur)

BBCode pour le contenu WalkMe :

  • Affichage visuel
    • Étape Smart Walk-Thru
    • ShoutOut
    • Directives SmartTip
    • Survey
  • Automatisation
    • Étape automatique Smart Walk-Thru (remplir le texte et sélectionner la valeur de la liste)
    • Étape de redirection Smart Walk-Thru

Structure de Regex

Dëmarcateurs de début et de fin

En dehors des crochets, ^ indique le début d'une expression rationnelle et est utilisé avec $ pour indiquer la fin de l'expression rationnelle.

Exemples

  • Regex in an extension package: ^https:\/\/ecolab\.my\.salesforce\.com.*|^https:\/\/ecolab.*na.*\.visual\.force\.com.*
  • Regex dans le moteur de règles : Données d'utilisateur → Variable → département → Est par expression régulière → ^sales$

Correspondance à un seul caractère

La forme la plus basique de regex effectue une correspondance directe entre les caractères.

Exemples

  • ^walkme$
    • Correspondra à « walkme »

Listes et fourchettes

[] peut être utilisé pour spécifier une liste de valeurs et, lorsqu'il est combiné avec -, peut dicter une gamme de valeurs que peut prendre un caractère correspondant dans la chaîne cible.

Exemples

  • ^[dcr][ao][gt]$
    • Correspondra à « dog » « cat » « rat » « rag »
    • Le premier caractère doit être d, unc ou un r ; le deuxième caractère doit être un a ou un o, et le troisième caractère doit être un g ou un t
  • ^[a-z][0-9]$
    • Le premier caractère doit entre a et z (minuscule) et le deuxième caractère doit être entre 0 et 9

Répétitions

{3} et {#,#} peuvent être utilisés pour éviter d'avoir à taper les mêmes motifs plusieurs fois de suite dans une expression rationnelle.

Exemples

  • ^[a-z]{3}$
    • Correspondra à trois lettres minuscules en séquence telles que « adf » ou « kzd »
  • ^[a-z]{1,3}$
    • Correspondra au minimum à un caractère et au maximum à trois des caractères précédents tels que « a » « am » et « abc », mais pas « duct »

Wildcards

Elles sont utiles si le texte de la chaîne cible est dynamique ou si le contenu n'a pas d'importance. . correspondra à n'importe quel caractère, * correspondra à zéro ou plus du motif précédent, et + correspondra à un ou plus du motif précédent.

Exemples

  • ^.*$
    • Correspond à zéro ou plusieurs caractères et est utile pour ajouter au début et à la fin d'une expression rationnelle (en particulier dans les extensions) parce que nous ne sommes intéressés que par la correspondance avec les sous-domaines.
  • ^a+b*c+$
    • Correspondra, car le + précise qu'au moins un des caractères précédents doit être présent

Caractère Échap

La barre oblique inverse \ indique que les caractères qui la suivent ont une signification particulière.

Exemples

  • \.
    • Représente une période et non une wildcard
  • \/, \$
    • Correspondra à un / et à un $
  • \d et \D
    • Correspond au caractère numérique\non numérique
  • \s et \S
    • Correspond au caractère avec espace/sans espace
  • \w et \W
    • Correspond au caractère alphanumérique/non alphanumérique

Caractère d'exclusion

Lorsqu'il est contenu dans [], ^ peut indiquer que le caractère ne doit pas être présent dans la chaîne cible.

Exemples

  • ^[^abc]$
    • Correspondra à n'importe quel caractère unique qui n'est pas a, b ou c
  • ^[^n-p]$
    • Correspondra à n'importe quel caractère unique qui n'est pas n, o, ou p
  • ^\w[^og]{2}$
    • Correspondra à bee et sea mais pas à log, bog, fog, etc.

Prévision négative

(?!) spécifie que la chaîne suivante ne doit pas être présente dans la correspondance et est utile, par exemple, pour empêcher une extension WalkMe de s'injecter dans la mauvaise iFrame.

Exemples

Le tuyau

| est l'opérateur logique « OU » dans regex et spécifie une chaîne cible peut correspondre à plusieurs modèles.

Exemples

  • ^.*ctmstech\.roche\.com/eclinical.*|.*ctms-performance\.roche\.com.*|.*siebelctmsqa\.kau\.roche\.com.*$

Utilisation de ChatGPT pour Regex dans WalkMe

Cet article a-t-il été utile?

Merci pour votre avis!

Be part of something bigger.

Engage with peers, ask questions, share ideas

Ask the Community
×