Retourne les �l�ments d'une colonne d'un tableau 1D ou 2D, en supprimant tous les doublons
#include <Array.au3>
_ArrayUnique ( Const ByRef $aArray [, $iColumn = 0 [, $iBase = 0 [, $iCase = 0 [, $iCount = $ARRAYUNIQUE_COUNT [, $iIntType = $ARRAYUNIQUE_AUTO]]]]] )
$aArray | Le tableau � traiter |
$iColumn | [optionnel] Index, compt� � partir de 0, de la colonne � utiliser - par d�faut 0 (2D uniquement) |
$iBase | [optionnel] Le tableau est de base 0 ou 1. Par d�faut, de base 0. |
$iCase | [optionnel] Flag pour indiquer si les op�rations doivent �tre sensibles � la casse. Par d�faut 0 : insensible � la casse. |
$iCount | [optionnel] Flag pour d�terminer si l'�l�ment [0] contient le nombre d'�l�ments retourn�s (par d�faut) - voir Remarques pour plus de d�tails. |
$iIntType | [optionnel] Flag pour changer l'algorithme de la fonction - voir Remarques pour plus de d�tails. |
Succ�s: | Retourne un tableau 1D contenant seulement les �l�ments de cette colonne. |
�chec: | D�finit @error <> 0. |
@error: | 1 - $aArray n'est pas un tableau ou est un tableau vide. 2 - $aArray n'est pas un tableau 1D ou 2D 3 - $iBase ou $iCase contient une valeur invalide 4 - $iCount contient une valeur invalide 5 - $iIntType contient une valeur invalide 6 - $iColumn est en dehors des limites du tableau |
Retourne un tableau contenant les �l�ments uniques.
Par d�faut $iCount est d�fini � $ARRAYUNIQUE_COUNT (1) et un d�compte est plac� dans l'�l�ment [0]. La d�finition de $iCount � $ARRAYUNIQUE_NOCOUNT (0) retourne une liste sans d�compte.
La fonction peut utiliser un algorithme rapide, tant que les �l�ments devant �tre examin�s ne contiennent pas des valeurs Int64 (par exemple des entiers 64 bits, des handles, des pointeurs) - si ces valeurs sont pr�sentes alors la fonction doit utiliser un algorithme plus lent. La d�finition du param�tre $iIntType modifie le comportement de la fonction comme suit:
$ARRAYUNIQUE_AUTO (0) (par d�faut) : Si le premier �l�ment n'est pas un entier, ex�cute l'algorithme rapide - retourne une erreur si des �l�ments Int64 sont trouv�es.
: Si le premier �l�ment est un entier, d�finissez les valeurs pertinentes FORCE32 ou Force64 ci dessous.
$ARRAYUNIQUE_FORCE32 (1) : Force tous les entiers dans le type Int32, ex�cute l'algorithme rapide - retourne une erreur si des valeurs Int64 sont trouv�es.
$ARRAYUNIQUE_FORCE64 (2) : Force tous les entiers dans le type Int64, ex�cute l'algorithme lent - retourne une erreur si des valeurs Int32 sont trouv�es.
$ARRAYUNIQUE_MATCH (3) : 0x00000123 et 0x0123 sont consid�r�es comme la m�me valeur, seulement la premi�re rencontr�e est retourn�e - ex�cute l'algorithme lent.
$ARRAYUNIQUE_DISTINCT (4) : 0x00000123 et 0x0123 sont consid�r�es comme valeurs distinctes, les deux sont retourn�es - ex�cute l'algorithme lent.
Une valeur autre que la valeur par d�faut $ARRAYUNIQUE_AUTO est n�cessaire seulement s'il est connu ou suspect� que des valeurs Int64 vont �tre examin�es. L'obligation d'utiliser un algorithme plus lent lors du traitement des valeurs Int64 est une limitation de l'objet Scripting.Dictionnary utilis� dans la fonction, pas de AutoIt lui-m�me.
#include <Array.au3> Local $aArray[10] = [1, 2, 3, 4, 5, 1, 2, 3, 4, 5] ; Cr�e un tableau 1D qui contient des valeurs en double. _ArrayDisplay($aArray, "$aArray Initial") ; Affiche le tableau initial. Local $aArrayUnique = _ArrayUnique($aArray) ; Utilise les param�tres par d�faut pour cr�er un tableau sans doublon. _ArrayDisplay($aArrayUnique, "$aArray Unique") ; Affiche le tableau sans doublon.
#include <Array.au3> Local $aArray[6][2] = [[1, "A"],[2, "B"],[3, "C"],[1, "A"],[2, "B"],[3, "C"]] _ArrayDisplay($aArray, "Tableau 2D initial") ; Affiche le tableau initial. Local $aArrayUnique = _ArrayUnique($aArray) ; Utilise les param�tres par d�faut pour cr�er un tableau sans doublon sur la premi�re colonne. _ArrayDisplay($aArrayUnique, "$aArray col 1") ; Affiche le tableau sans doublon sur la premi�re colonne. $aArrayUnique = _ArrayUnique($aArray, 1) ; Cr�e un tableau sans doublon � partir de la deuxi�me colonne. _ArrayDisplay($aArrayUnique, "$aArray col 2") ; Affiche le tableau sans doublon.