SubField(text, delimiter[, field_no ])
Argument | Description |
---|---|
text | 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. |
delimiter | Caractère inclus dans la chaîne d’entrée text qui divise la chaîne en plusieurs composants. |
field_no | 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.
|
Exemple | Résultat | ||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
SubField(S, ‘;’ ,2) | Renvoie ‘cde’ si S correspond à ‘abc;cde;efg’. | ||||||||||||||||||||||||||||||||||||||||||
SubField(S, ‘;’ ,1) | Renvoie une chaîne vide si S est une chaîne vide. | ||||||||||||||||||||||||||||||||||||||||||
SubField(S, ‘;’ ,1) | Renvoie une chaîne vide si Scorrespond à ‘;’. | ||||||||||||||||||||||||||||||||||||||||||
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;
|
|
||||||||||||||||||||||||||||||||||||||||||
Imaginons que vous ayez une variable contenant le nom de chemin d’accès vMyPath,
Set vMyPath=\Users\ext_jrb\Documents\Qlik\Sense\Apps;.
|
Dans un graphique de type texte et image, vous pouvez ajouter une mesure telle que : SubField(vMyPath, ‘\’,-3), ce qui aboutit à Qlik, car il s’agit de la troisième sous-chaîne en partant de l’extrémité droite de la variable vMyPath. |
||||||||||||||||||||||||||||||||||||||||||
Cet exemple montre comment l’utilisation de plusieurs instances de la fonction Subfield(), chacune omettant le paramètre field_no, à partir de la même instruction LOAD crée des produits cartésiens de toutes les combinaisons. L’option DISTINCT est utilisée pour éviter de créer des enregistrements en double.
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 ‘|’);
|
|