Comment utiliser la fonction textmatch?
textmatch est une fonction qui évalue l'expression régulière spécifiée par rapport à un attribut de chaîne donné. Elle renvoie un message vrai si la chaîne contient le motif. Il utilise la double barre oblique inverse (\\N) pour s'échapper.
Syntax:
textmatch(string_attribute, regex_pattern)
Exemple :
azuread oauth2permissiongrant should-not-have textmatch(scope, "AppRoleAssignment.ReadWrite.All") = true
Regular Expression Constraints used with textmatch:
-
^ : vérification de la correspondance au début de la chaîne de caractères
Example String Pattern Match Note abc ^a Oui La correspondance est réussie car l'alphabet "a" se trouve au début de la chaîne. bac ^a Non
La correspondance n'aboutit pas car l'alphabet "a" n'est pas présent au début de la chaîne.Contrainte d'expression régulière utilisée dans le tableau -
$ : vérification de la correspondance à la fin de la chaîne de caractères
| Example String | Pattern | Match | Note |
| abc | a$ | Non | La correspondance n'aboutit pas car l'alphabet "a" n'est pas présent à la fin de la chaîne. |
| bac | c$ | Oui | La correspondance est réussie car l'alphabet "c" se trouve au début de la chaîne. |
Metacharacters used with textmatch:
-
| Le terme de "choix" désigne l'alternance ou le choix entre des éléments.
Example String Pattern Match Note a a|b Oui La correspondance est réussie car le motif "a|b" contient la chaîne "a". a c|d Non La recherche n'aboutit pas car le motif "c|d" ne contient pas de chaîne "a". | Expression régulière Contrainte utilisée dans le tableau -
[ ] : spécifie une classe de caractères.
-
Si deux caractères de la liste sont séparés par -, il s'agit d'une abréviation pour toute la gamme de caractères entre ces deux caractères.
-
Si la liste commence par ^, elle correspond à n'importe quel caractère unique ne figurant pas dans le reste de la liste.
Example String Pattern Match Note a [abc] Oui La correspondance est réussie car "a" est présent dans le modèle. d [abc] Non La recherche n'aboutit pas car "d" n'est pas présent dans le modèle. 5 [0-9] Oui La correspondance est réussie car "5" se trouve dans la série des chiffres décimaux compris entre 0 et 9. a [a0-9] Oui La correspondance est réussie car "a" se trouve dans le modèle de a et de la série de chiffres décimaux de 0 à 9. z [a-z0-9] Oui La correspondance est réussie car "z" se trouve dans le modèle des lettres de a à z et des séries de chiffres décimaux de 0 à 9. A [^a-z0-9] Oui La correspondance est réussie parce que la chaîne est un caractère quelconque qui n'est pas une lettre minuscule de a à z ou une série de chiffres décimaux de 0 à 9. [Expression régulière Contrainte utilisée dans le tableau
-
-
* : recherche une séquence d'aucune à plusieurs correspondances
Example String Pattern Match Note x x* Oui La correspondance est réussie car "x" est présent dans le motif. a x* Oui La correspondance est réussie parce qu'aucun "x" n'est trouvé dans le motif. xxxx x* Oui La correspondance est réussie parce que "x" se trouve plusieurs fois dans le modèle. * Contrainte d'expression régulière utilisée dans le tableau -
+ : une séquence d'une ou plusieurs correspondances
Example String Pattern Match Note x x+ Oui La correspondance est réussie car "x" est présent dans le motif. a x+ no La recherche n'aboutit pas car "x" n'est pas présent dans le modèle. xxxx x+ Oui La correspondance est réussie parce que "x" se trouve plusieurs fois dans le modèle. + Contrainte d'expression régulière utilisée dans le tableau -
? : une séquence d'aucune ou d'une seule correspondance
Example String Pattern Match Note x x ? Oui La correspondance est réussie car "x" est présent dans le motif. a x ? Oui La correspondance est réussie parce qu'aucun "x" n'est trouvé dans le motif. xxxx x ? Oui La correspondance est réussie car "x" est présent dans le motif. ? Expression régulière Contrainte utilisée dans le tableau -
{m} : une séquence d'exactement m correspondances de l'atome
Example String Pattern Match Note x x{2} no La correspondance n'est pas réussie car "x" n'est pas trouvé 2 fois dans le modèle. xx x{1} Oui La correspondance est réussie parce que "x" se trouve 1 fois dans le modèle. a x{0} Oui Le match a été un succès. Le {0} fait en sorte que le « x » soit ignoré, le modèle est essentiellement une chaîne vide. {m} Expression régulière contrainte utilisée dans le tableau -
{m,} : une séquence de m correspondances ou plus
Example String Pattern Match Note x x{1,} Oui La correspondance n'est pas réussie car "x" se trouve 1 fois dans le modèle. x x{2,} no La correspondance n'est pas réussie car "x" n'est pas trouvé 2 fois dans le modèle. x x{0,} Oui Le match a été un succès. Le {0} fait en sorte que le « x » soit ignoré, le modèle est essentiellement une chaîne vide. {m,} Expression régulière Contrainte utilisée dans le tableau -
{m, n} : une séquence de correspondances de m à n (inclus), m ne pouvant excéder n
Example String Pattern Match Note x x{1,2} Oui La correspondance est réussie parce que la chaîne contient "x" et que le motif exige la même chose. x x{2,3} no La correspondance n'aboutit pas car la chaîne ne contient que "x", alors que le motif exige au moins "xx" pour qu'il y ait correspondance. xxxx x{1,2} Oui La correspondance est réussie parce que la chaîne contient "xx" et que le motif exige la même chose. {m,n} Expression régulière Contrainte utilisée dans le tableau Échappements abrégés utilisés avec
textmatch:
| \\d | Match any digit |
| \\s | Correspond à tout caractère d'espacement |
| \\w | Correspond à n'importe quel caractère d'un mot |
| \\D | Match any non-digit |
| \\S | Correspond à tout caractère autre qu'un espace blanc |
| \\W | Correspond à tout caractère autre qu'un mot |

