$unique

Utilisation : $unique(nom[,sensible_à_la_casse[,séparateur]])
Catégorie : multi-valeurs
Implémenté : Picard 2.6.1

Description:

Retourne une copie triée de la variable à valeurs multiples nom avec les éléments en double supprimés. Par défaut, la comparaison ne tient pas compte de la casse des éléments ; cependant, cela peut être modifié en donnant à sensible_à_la_casse une valeur non vide. Une valeur littérale représentant une multi-valeur peut être substituée à nom, en utilisant le séparateur (ou un point-virgule suivi d’un espace « ;  » s’il n’est pas passé) pour contraindre la valeur dans une variable multi-valeur appropriée. Si nom est manquant, $unique retournera une chaîne vide.

Note

Lors d’une comparaison insensible à la casse (par défaut), le dernier élément correspondant sera utilisé dans le résultat. Par exemple, si la variable à valeurs multiples contient “abc”, “Abc”, “ABc” et “ABC” dans cet ordre, l’élément “ABC” sera inclus dans le résultat.

Exemple:

Les instructions suivantes renverront les valeurs indiquées :

$setmulti(foo,a; A; B; b; cd; Cd; cD; CD; a; A; b)
$set(bar,a; A; B; b; cd; Cd; cD; CD; a; A; b)

$unique(%foo%)     ==>  "A; CD; b"
$unique(%bar%)     ==>  "a; A; B; b; cd; Cd; cD; CD; a; A; b"
$unique(%foo%,1)   ==>  "A; B; CD; Cd; a; b; cD; cd"

$unique(a; A; B; b; cd; Cd; cD; CD; a; A; b)  ==>  "A; CD; b"