SubField - fonction de script et fonction de graphique
SubField() permet d'extraire des composants de sous-chaîne d'un champ de chaîne parent, où les champs d'enregistrement d'origine se composent de plusieurs parties séparées par un délimiteur.
La fonction Subfield() peut s'utiliser, par exemple, pour extraire le prénom et le nom de famille d'une liste d'enregistrements constituée de noms complets, les parties de composant d'un nom de chemin ou encore les données de tables séparées par des virgules.
Si vous utilisez la fonction Subfield() dans une instruction LOAD en ignorant le paramètre
Syntax:
SubField(text, delimiter[, field_no ])
Return data type: chaîne
Arguments:
Argument | Description |
---|---|
|
Chaîne d'origine. Il peut s'agir d'un texte codé de manière irréversible, d'une variable, d'une expansion dollar ou d'une autre expression. |
|
Caractère inclus dans la chaîne d'entrée text qui divise la chaîne en plusieurs composants. |
|
Le troisième argument, facultatif, est un entier spécifiant laquelle des sous-chaînes de la chaîne parent text doit être renvoyée. Utilisez la valeur 1 pour renvoyer la première sous-chaîne, la valeur 2 pour renvoyer la deuxième sous-chaîne, et ainsi de suite.
|
Example:
Ajoutez l'exemple de script à votre application et exécutez-le. Ensuite, ajoutez au moins les champs répertoriés dans la colonne des résultats à une feuille de votre application afin de visualiser le résultat.
FullName:
LOAD * inline [
Name
'Dave Owen'
'Joe Tem'
];
SepNames:
Load Name,
SubField(Name, ' ',1) as FirstName,
SubField(Name, ' ',-1) as Surname
Resident FullName;
Drop Table FullName;
Name | FirstName | Surname |
---|---|---|
Dave Owen | Dave | Owen |
Joe Tem | Joe | Tem |
Example:
Cet exemple montre comment l'utilisation de plusieurs instances de la fonction Subfield(), chacune omettant le paramètre
Ajoutez l'exemple de script à votre application et exécutez-le. Ensuite, ajoutez au moins les champs répertoriés dans la colonne des résultats à une feuille de votre application afin de visualiser le résultat.
LOAD DISTINCT
Instrument,
SubField(Player,',') as Player,
SubField(Project,',') as Project;
Load * inline [
Instrument|Player|Project
Guitar|Neil,Mike|Music,Video
Guitar|Neil|Music,OST
Synth|Neil,Jen|Music,Video,OST
Synth|Jo|Music
Guitar|Neil,Mike|Music,OST
] (delimiter is '|');
Instrument | Player | Project |
---|---|---|
Guitar | Mike | Music |
Guitar | Mike | Video |
Guitar | Mike | OST |
Guitar | Neil | Music |
Guitar | Neil | Video |
Guitar | Neil | OST |
Synth | Jen | Music |
Synth | Jen | Video |
Synth | Jen | OST |
Synth | Jo | Music |
Synth | Neil | Music |
Synth | Neil | Video |
Synth | Neil | OST |