Sort (FPScript)

21.09.2021

Trie un ensemble de données ou renvoie un index de tri pour un ensemble de données.

Syntaxe

Sort(DataSet [ , Operation = SORT_Y + SORT_INDEX ])

 

La syntaxe de la fonction Sort se compose des éléments suivants :

Section

Description

DataSet

L'ensemble de données à trier.

Toutes les structures de données sont autorisées, sauf Scalaire et Liste. Les types de données pris en charge sont Entier de 16 bits, Entier de 32 bits, Entier de 64 bits, Virgule flottante de 32 bits, Virgule flottante de 64 bits, Chaîne de caractères, Temps calendaire et Période de temps.

Si l'argument est une liste, alors la fonction est exécutée pour chaque élément de la liste et le résultat est également une liste.

Operation

Contrôle la sortie et, pour les signaux, sélectionne la composante selon laquelle le tri doit avoir lieu.

L'argument Operation peut avoir les valeurs suivantes :

Constante

Signification

SORT_Y

Les structures de données composées sont triées en fonction de la composante Y.

SORT_X

Les structures de données composées sont triées en fonction de la composante X.

SORT_Z

Les structures de données composées sont triées en fonction de la composante Z.

...plus une ou plusieurs constantes optionnelles.

Constante

Signification

+ SORT_DESCENDING

Cette constante entraîne un tri décroissant.

+ SORT_INDEX

Cette constante entraîne la production d'un ensemble de données d'index qui représente le résultat du tri.

+ SORT_CASE_SENSITIVE

Cette constante entraîne un tri sensible à la casse des chaînes de caractères.

+ SORT_ALPHANUMERIC

Cette constante permet de trier numériquement par ordre croissant des chaînes de caractères identiques se terminant par des chiffres croissants.

+ SORT_COLLATE

Cette constante fait que les règles de tri de la langue sélectionnée sont prises en compte lors du tri des chaînes de caractères.

Si l'argument est une liste, alors son premier élément est pris. S'il s'agit à nouveau d'une liste, le processus est répété.

Si l'argument n'est pas spécifié, il est défini à la valeur par défaut SORT_Y + SORT_INDEX .

Remarques

Pour les signaux, les séries de signaux et les courbes 3D, on peut spécifier la composante selon laquelle le tri doit avoir lieu. Utilisez la fonction SORT_INDEX si vous souhaitez utiliser un ensemble de données comme critère de tri pour un ou plusieurs ensembles de données supplémentaires. Vous pouvez utiliser l'ensemble de données d'index obtenu comme argument à l'opérateur d'index afin de trier d'autres ensembles de données. Si vous n'utilisez pas SORT_INDEXle résultat a alors la même structure et la même unité que l'argument DataSet.

Les valeurs invalide (void) sont toujours placées à la fin de la série résultante, que le tri soit ascendant ou descendant.

Disponible dans

FlexPro Basic, Professional, Developer Suite

Exemples

Sort({1, 7, 5, 2})

Renvoie {0L, 3L, 2L, 1L}. Il s'agit de la série de données avec les indices triés.

Sort({1, 7, 5, 2}, SORT_Y)

Renvoie {1, 2, 5, 7}. Il s'agit de la série de données avec les valeurs triées.

Sort({1, 7, 5, 2}, SORT_Y + SORT_DESCENDING)

Renvoie {7, 5, 2, 1}. Il s'agit de la série de données dont les valeurs sont triées par ordre décroissant.

Sort({1, 5, ?, ?, 4, 2}, SORT_Y)
 

Renvoie {1, 2, 4, 5, ?, ?}. Les valeurs invalides (void) sont toujours triées à la fin de la série résultante.

Sort({1, 5, ?, ?, 4, 2}, SORT_Y + SORT_DESCENDING)

Renvoie {5, 4, 2, 1, ?, ?}. Cela vaut également pour le tri par ordre décroissant.

Sort(Signal, SORT_X)

Réorganise un signal de manière à ce que la composante X augmente.

Sort({"D", "c", "B", "a"}, SORT_CASE_SENSITIVE)

Renvoie {"B", "D", "a", "c"}. Trie les chaînes de caractères en prenant en compte la casse.

Sort({"D", "c", "B", "a"}, SORT_IGNORE_CASE)

Renvoie {"a", "B", "c", "D"}. Trie les chaînes de caractères, en ignorant la casse.

Sort({"ä", "D", "Ä", "c", "B", "a"}, SORT_COLLATE)

Renvoie {"a", "Ä", "ä", "B", "c", "D"}. Trie les chaînes de caractères par ordre alphabétique.

Sort({"Signal1", "Signal11", "Signal2"}, SORT_ALPHANUMERIC)

Renvoie {"Signal1", "Signal2", "Signal11"}. Trie les chaînes de caractères de façon alphanumérique.

Sort({"b1", "ä2", "ä11", "a1", "b2", "b11", "a11", "ä1", "a2"}, SORT_ALPHANUMERIC + SORT_COLLATE)

Renvoie {"a1", "a2", "a11", "ä1", "ä2", "ä11", "b1", "b2", "b11"}. Trie les chaînes de caractères par ordre alphanumérique croissant.

Partager l’article ou envoyer par mail :

Vous serez probablement intéressé par les articles suivants :