TextBetween - fonction de script et fonction de graphique
TextBetween() renvoie le texte de la chaîne d'entrée figurant entre les caractères spécifiés comme délimiteurs.
TextBetween(text,
delimiter1, delimiter2[, n])
chaîne
Arguments
Argument
Description
text
Chaîne d'origine.
delimiter1
Spécifie le premier caractère (ou la première chaîne) délimiteur à rechercher dans la chaîne text.
delimiter2
Spécifie le deuxième caractère (ou la deuxième chaîne) délimiteur à rechercher dans la chaîne text.
n
Définit l'occurrence de la paire de délimiteurs à l'intérieur de laquelle la recherche doit porter. Par exemple, une valeur égale à 2 renvoie les caractères compris entre la deuxième occurrence de delimiter1 et la deuxième occurrence de delimiter2.
Exemple : Expressions de graphique
Exemple
Résultat
TextBetween( '<abc>', '<', '>' )
Renvoie abc.
TextBetween( '<abc><de>', '<', '>',2 )
Renvoie de.
TextBetween( 'abc', '<', '>' )
Renvoie NULL.
Si la chaîne ne contient aucun des délimiteurs, la valeur NULL est renvoyée.
TextBetween( '<a<b', '<', '>' )
Renvoie NULL.
Si l'un des délimiteurs n'est pas trouvé dans la chaîne, la valeur NULL est renvoyée.
TextBetween( '<>', '<', '>' )
Renvoie une chaîne de longueur zéro.
TextBetween( '<abc>', '<', '>', 2 )
Renvoie NULL, car n est supérieur au nombre d'occurrences des délimiteurs.
Exemple - Les bases de TextBetween
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 :
Jeu de données chargé dans une table de données appelée Example.
Champ dans la table de données portant le nom InputText.
Chargez les données et ouvrez une feuille. Créez une table et ajoutez ce champ comme dimension :
InputText
Créez les dimensions calculées suivantes :
=TextBetween(InputText,'<','>') pour calculer la première instance des caractères qui apparaissent entre les délimiteurs '<' et '>' dans le champ InputText.
=TextBetween(InputText,'<','>',2) pour calculer la deuxième instance des caractères qui apparaissent entre les délimiteurs '<' et '>' dans le champ InputText.
Results table
InputText
TextBetween(InputText,'<','>')
TextBetween(InputText,'<','>',2)
<abc><de>
abc
de
<def><ghi><jkl>
def
ghi
Dans la première dimension calculée, la sortie de la fonction TextBetween renvoie la première instance des caractères qui apparaissent entre les délimiteurs '<' et '>'. Par exemple, la ligne 1 renvoie abc. La deuxième dimension calculée a un argument n égal à 2 ; par conséquent, la sortie renvoie la deuxième instance des caractères qui apparaissent entre les délimiteurs '<' et '>'. Par exemple, la ligne 1 renvoie de.
Le code suivant montre comment utiliser la fonction dans un script de chargement.
Load *,
textbetween(Text,'<','>') as TextBetween,
textbetween(Text,'<','>',2) as SecondTextBetween;
Load * inline [
Text
<abc><de>
<def><ghi><jkl>];
Tableau de résultats
Text
TextBetween
SecondTextBetween
<abc><de>
abc
de
<def><ghi><jkl>
def
ghi
Exemple - Scénario TextBetween
Vue d'ensemble
Un jeu de données contient une table de données avec des adresses e-mail. Cet exemple utilise la fonction TextBetween pour extraire le domaine de deuxième niveau de l'adresse.
Ouvrez l'éditeur de chargement de données et ajoutez le script de chargement ci-dessous à un nouvel onglet.
Le script de chargement contient :
Jeu de données chargé dans une table de données appelée Example.
Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :
UserID
EmailAddress
Créez la dimension calculée suivante :
=TextBetween(EmailAddress,'@', '.') pour renvoyer le texte entre les caractères '@' et '.' dans le champ EmailAddress.
Results table
UserID
EmailAddress
TextBetween(EmailAddress,'@', '.')
1
alice@example.com
example
2
bob@sample.org
sample
3
charlie@domain.net
domain
La sortie de la fonction TextBetween renvoie le domaine de deuxième niveau pour chaque ID utilisateur en recherchant le contenu entre les délimiteurs spécifiés : '@' et '.'.
Cette page vous a-t-elle aidé ?
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 !