_arrayUnique funktioniert nicht

  • Hallo an alle,

    irgendwie steh ich mal wieder auf dem Schlauch. Hab ein Array mit doppelten Einträgen und will diese jetzt mittels _arrayUnique entfernen, sprich ein neues Array ohne doppelte Einträge erstellen lassen.

    Hier der Scriptausschnitt:

    [autoit]


    _ArrayDisplay($matches)
    $unique=_ArrayUnique($matches)
    _ArrayDelete($unique, 0)
    _ArrayDisplay($unique)

    [/autoit]

    Beides mal wird genau das selbe angezeigt und es sind immer noch identische Werte im Array. Wie kann das sein? So langsam komm ich mir blöd vor...

    Gruß Oli

  • Die _Arraydelete Zeile verwirrt etwas.

    _Arrayunique funktioniert aber :)

    [autoit]


    #include <Array.au3>

    [/autoit][autoit][/autoit][autoit]

    Dim $aArray[10] = [1, 2, 3, 4, 5, 1, 2, 3, 4, 5]
    _ArrayDisplay($aArray, "$aArray")
    $aNewArray = _ArrayUnique($aArray) ;Using Default Parameters
    _ArrayDisplay($aNewArray, "$aNewArray represents the 1st Dimension of $aArray")

    [/autoit]
  • Das mit

    [autoit]


    _ArrayDelete($unique, 0)

    [/autoit]

    hat folgenden Hintergrund: der erste Wert, quasi $array[0], in einem durch _aarayUnique erstellten Array enthält immer die Anzahl der Elemente des Arrays, daher das delete.

    Bei dem Beispiel funktioniert es, aber bei mir in meinem Script nicht... Ich werd noch bekloppt...

  • Sooooo sorry, hab den Fehler gefunden...

    Lag nicht an der Funktion, sondern an den Einträgen selber...


    CLOSED