Extraire une valeur sans écrire d'expression régulière
Sélectionnez la valeur dans un vrai message, la plateforme écrit le motif et le teste sur vos vingt derniers messages.
Un pointeur extrait une valeur que Extraction ne trouve pas seule : un identifiant maison, un jeton dans un format qui n’appartient qu’à vous, ou l’un de deux codes présents dans le même message.
Vous n’écrivez pas d’expression régulière. Vous sélectionnez la valeur dans un vrai message, et la plateforme écrit le motif.
Créer un pointeur
- Dans la vue inbox, ouvrez un message qui contient la valeur.
- Sélectionnez la valeur à la souris. L’éditeur propose plusieurs motifs, classés, chacun avec la raison qui le place là.
- Choisissez un motif, nommez-le, enregistrez.
Le pointeur s’applique ensuite à chaque nouveau message de l’inbox, et vous le lisez sous la clé que vous avez nommée :
message.extract.codeCommande;
Choisir la stratégie
| Stratégie | Le motif obtenu | Quand la choisir |
|---|---|---|
context | ancrage sur les mots qui précèdent | Le défaut recommandé. Survit à une refonte de la mise en page |
context-strict | ancrage sur quatre mots | Le message contient plusieurs valeurs de même forme |
shape | \b(\d{6})\b | La forme est unique dans le message |
loose | \b(\d{5,7})\b | L’émetteur supprime parfois les zéros initiaux |
literal | la valeur exacte | Une chaîne qui ne change jamais |
Les motifs qui capturent exactement votre sélection, et une seule fois, apparaissent en premier.
Prenez context si vous hésitez : il s’ancre sur les derniers mots littéraux qui
précèdent la valeur. Une mise en page change souvent, « votre code de confirmation
est » beaucoup moins.
Lire le résultat du test avant d’enregistrer
Avant l’enregistrement, l’éditeur exécute le motif sur vos vingt derniers messages et affiche combien donnent exactement une capture. Lisez ce nombre : un motif qui fonctionne sur le message sous vos yeux et échoue sur les dix précédents est celui qui cassera votre intégration continue à trois heures du matin.
Le test est exécuté par le service qui reçoit vos messages, donc par le même moteur d’expressions régulières que la production. La coche verte de l’éditeur et le comportement réel ne peuvent pas diverger.
Ce que le moteur refuse
Les motifs sont compilés par RE2. Deux constructions n’existent pas, et l’éditeur vous le dit avant d’enregistrer plutôt qu’à la première réception :
- l’anticipation
(?=…)et(?!…); - la référence arrière
\1.
Presque tout ce que vous feriez avec une anticipation se réécrit en ancrant sur le
contexte, ce que context fait déjà.
Écrire le motif à la main
Le champ du motif reste éditable si vous préférez l’écrire vous-même. Ce que vous y mettez passe la même vérification : compilation par RE2, puis exécution sur vos vingt derniers messages. Aucun chemin ne contourne le test.
Vérifié le Cet article est faux ou incomplet ?