IsRegEx - fonction de script et fonction de graphique
IsRegEx() indique si le texte spécifié est une expression régulière valide.
Cette fonction effectue des opérations de regex sensibles à la casse. Sinon, vous pouvez utiliser la variante IsRegExI() pour effectuer des opérations de regex non sensibles à la casse.
IsRegEx
(expr [, debug])
double
Arguments
Argument
Description
expr
Expression de chaîne contenant l'expression régulière à évaluer.
debug
Argument facultatif. Si une valeur est spécifiée pour cet argument, l'expression renvoie une indication textuelle expliquant comment une expression régulière non valide peut être corrigée.
Exemples de fonction
Exemple
Résultat
IsRegEx('[a-z]')
Renvoie -1 (vrai).
IsRegEx(']0-1[', 1)
Cet exemple renvoie un message d'erreur accompagné d'une indication permettant de corriger l'expression régulière non valide ]0-1[.
IsRegEx('[a-z')
Renvoie 0 (faux). Aucun message d'erreur n'est affiché, car l'argument debug n'est pas spécifié.
Cas d'utilisation
Vous pouvez utiliser IsRegEx() pour tester si les expressions régulières que vous écrivez sont valides dans Qlik Sense. Par exemple, vous pouvez charger une table dans votre application avec un texte d'entrée et une évaluation de la validité du texte sous forme de regex.
Exemple 1 – Chargement de la validité d'une regex dans le modèle de données
Vue d'ensemble
Ouvrez l'éditeur de chargement de données et ajoutez le script de chargement ci-dessous à un nouvel onglet.
Le script de chargement contient :
Champ, reg_exp, contenant des chaînes d'entrée qui peuvent être ou ne pas être des expressions régulières valides.
Deux champs calculés pour vérifier si chaque valeur de reg_exp est une expression régulière valide ou non :
validity_no_hint : affiche -1 (vrai) si la regex est valide et 0 (faux) si elle n'est pas valide.
validity_with_hint : affiche -1 (vrai) si la regex est valide. Si la regex n'est pas valide, un message d'erreur automatiquement généré indique les problèmes posés par l'entrée, avec des indications possibles pour y remédier.
Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :
reg_exp
validity_no_hint
validity_with_hint
Tableau de résultats
reg_exp
validity_no_hint
validity_with_hint
([a-z)(0-9)+
0
-1
[a-z]+
-1
Texte d'indication (automatiquement généré)
\$|¢(0-9)
-1
Texte d'indication (automatiquement généré)
abcdefg|[0-7
0
-1
Exemple 2 – Chargement uniquement d'une regex valide dans le modèle de données
Vue d'ensemble
Ouvrez l'éditeur de chargement de données et ajoutez le script de chargement ci-dessous à un nouvel onglet.
Le script de chargement contient :
Champ, reg_exp, contenant des chaînes d'entrée qui peuvent être ou ne pas être des expressions régulières valides. Ce champ est contenu dans un tableau nommé Regular Expressions.
Clause where qui ne charge les enregistrements dans le modèle de données que lorsque l'entrée est une expression régulière valide.
Chargez les données et ouvrez une feuille. Créez une table et ajoutez ce champ comme dimension :
reg_exp
Tableau de résultats
reg_exp
[a-z]+
\$|¢(0-9)
[a-z]+ et \$|¢(0-9) sont des expressions régulières valides ; elles ont donc été chargées dans le modèle de données. ([a-z)(0-9)+ et abcdefg|[0-7 ne sont pas des expressions régulières valides ; elles ne sont donc pas chargées dans le modèle de données.
Exemple 3 – Expressions de graphique
Vue d'ensemble
Dans cet exemple, nous chargeons un ensemble de chaînes d'entrée dans le modèle de données et nous les ajoutons à un tableau, avec deux dimensions calculées qui évaluent la validité de la regex. Les deux dimensions calculées transmettent la même information de manières différentes.
Ouvrez l'Éditeur de chargement de données et ajoutez le script de chargement suivant à une nouvelle section.
Le script de chargement contient un champ, reg_exp, comportant des chaînes d'entrée qui peuvent être ou ne pas être des expressions régulières valides. Ce champ est contenu dans un tableau nommé Regular Expressions.
Chargez les données et ouvrez une feuille. Créez un tableau. Ajoutez reg_exp comme dimension.
Ajoutez ensuite la dimension calculée suivante :
=IsRegEx(reg_exp)
Il s'agit d'une expression de graphique de base qui indique -1 (vrai) si l'entrée est une expression régulière valide et 0 (faux) dans le cas contraire.
Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !