Fonctions de chaîne
Profile Query Language (PQL) offre des fonctions pour faciliter l’interaction avec les chaînes. Vous trouverez plus d’informations sur les autres fonctions PQL dans la Profile Query Language présentation.
Comme
La fonction like
permet de déterminer si une chaîne correspond à un modèle spécifié en tant que valeur booléenne.
Format
{STRING_1} like {STRING_2}
{STRING_1}
{STRING_2}
L'expression à laquelle comparer la première chaîne. Les deux caractères spéciaux pris en charge pour créer une expression sont %
et _
.
%
est utilisé pour représenter aucun ou plusieurs caractères._
est utilisé pour représenter exactement un caractère.
Exemple
La requête PQL suivante récupère toutes les villes contenant le modèle « es ».
city like "%es%"
Starts with
La fonction startsWith
permet de déterminer si une chaîne commence par une sous-chaîne donnée en tant que valeur booléenne.
Format
{STRING_1}.startsWith({STRING_2}, {BOOLEAN})
{STRING_1}
{STRING_2}
{BOOLEAN}
Exemple
La requête PQL suivante détermine si le nom de la personne commence par « Joe » en respectant la casse.
person.name.startsWith("Joe")
Does not start with
La fonction doesNotStartWith
permet de déterminer si une chaîne ne commence pas par une sous-chaîne donnée en tant que valeur booléenne.
Format
{STRING_1}.doesNotStartWith({STRING_2}, {BOOLEAN})
{STRING_1}
{STRING_2}
{BOOLEAN}
Exemple
La requête PQL suivante détermine si le nom de la personne ne commence pas par « Joe » en respectant la casse.
person.name.doesNotStartWith("Joe")
Ends with
La fonction endsWith
permet de déterminer si une chaîne se termine par une sous-chaîne spécifiée sous la forme d’une valeur booléenne.
Format
{STRING_1}.endsWith({STRING_2}, {BOOLEAN})
{STRING_1}
{STRING_2}
{BOOLEAN}
Exemple
La requête PQL suivante détermine si l’adresse e-mail de la personne se termine par « .com » en respectant la casse.
person.emailAddress.endsWith(".com")
Does not end with
La fonction doesNotEndWith
permet de déterminer si une chaîne ne se termine pas par une sous-chaîne donnée en tant que valeur booléenne.
Format
{STRING_1}.doesNotEndWith({STRING_2}, {BOOLEAN})
{STRING_1}
{STRING_2}
{BOOLEAN}
Exemple
La requête PQL suivante détermine si l’adresse e-mail de la personne ne se termine pas par « .com » en respectant la casse.
person.emailAddress.doesNotEndWith(".com")
Contains
La fonction contains
permet de déterminer si une chaîne contient une sous-chaîne spécifiée en tant que valeur booléenne.
Format
{STRING_1}.contains({STRING_2}, {BOOLEAN})
{STRING_1}
{STRING_2}
{BOOLEAN}
Exemple
La requête PQL suivante détermine si l’adresse e-mail de la personne contient la chaîne « 2010@gm » en respectant la casse.
person.emailAddress.contains("2010@gm")
Does not contain
La fonction doesNotContain
permet de déterminer si une chaîne ne contient pas de sous-chaîne spécifiée en tant que valeur booléenne.
Format
{STRING_1}.doesNotContain({STRING_2}, {BOOLEAN})
{STRING_1}
{STRING_2}
{BOOLEAN}
Exemple
La requête PQL suivante détermine si l’adresse e-mail de la personne ne contient pas la chaîne « 2010@gm » en respectant la casse.
person.emailAddress.doesNotContain("2010@gm")
Equals
La fonction equals
permet de déterminer si une chaîne est égale à la chaîne spécifiée en tant que valeur booléenne.
Format
{STRING_1}.equals({STRING_2})
{STRING_1}
{STRING_2}
Exemple
La requête PQL suivante détermine si le nom de la personne est « John » en respectant la casse.
person.name.equals("John")
Not equal to
La fonction notEqualTo
permet de déterminer si une chaîne n’est pas égale à la chaîne spécifiée en tant que valeur booléenne.
Format
{STRING_1}.notEqualTo({STRING_2})
{STRING_1}
{STRING_2}
Exemple
La requête PQL suivante détermine si le nom de la personne n’est pas « John » en respectant la casse.
person.name.notEqualTo("John")
Matches
La fonction matches
permet de déterminer si une chaîne correspond à une expression régulière donnée. Pour plus d’informations sur les modèles correspondants dans les expressions régulières en tant que valeur booléenne, reportez-vous à ce document .
Format
{STRING_1}.matches(STRING_2})
Exemple
La requête PQL suivante détermine si le nom de la personne commence par « John » sans tenir compte de la casse.
person.name.matches("(?i)^John")
\w
, vous devez pour échapper la barre oblique inverse. Ainsi, au lieu d'écrire uniquement \w
, vous devez inclure une barre oblique inverse supplémentaire et écrire \\w
.Groupe d’expressions régulières
La fonction regexGroup
est utilisée pour extraire des informations spécifiques, en fonction de l’expression régulière fournie sous forme de chaîne.
Format
{STRING}.regexGroup({EXPRESSION})
Exemple
La requête PQL suivante est utilisée pour extraire le nom de domaine d’une adresse e-mail.
emailAddress.regexGroup("@(\\w+)", 1)
\w
, vous devez pour échapper la barre oblique inverse. Ainsi, au lieu d'écrire uniquement \w
, vous devez inclure une barre oblique inverse supplémentaire et écrire \\w
.Étapes suivantes
Maintenant que vous en savez plus sur les fonctions de chaîne, vous pouvez les utiliser dans vos requêtes PQL. Pour plus d’informations sur les autres fonctions PQL, consultez la présentation du langage de requête de profil.