- Offizieller Beitrag
Hi,
da es ja doch so nach und nach immer mehr wird, habe ich mich entschlossen mal alle meine Array-UDF's in eine "ArrayMore.au3" zu packen.
Falls noch mehr hinzukommt, werde ich dies hier aktualisieren.
Edit 30.12.2013
Bugs in _Array2DEmptyDel() und _Array2DDblDel() beseitigt. Aktuelle Version: v 0.4
EDIT 25.07.07
Es ist doch einiges hinzugekommen, bzw. wurden die Funktionen, die bisher nur mit 1D-Arrays arbeiteten (oder Dim 2 begrenzt auf 2) erweitert auf 2D ohne Begrenzung.
<<NEU>>
Die Calltips für alle hier aufgeführten Funktionen, inklusive Löschfunktion für die Tipps der vorigen Version im Programm: "SetCallTip.au3".
NEU 23.02.08:
- Hinzugefügt: _Array2DAdd, _Array2DPop, _Array2DPush
- Calltipps aktualisiert
Edit 02.03.08
Die Datenbank hatte mein Edit verschluckt :D, also nun nochmal:
- ein Bug in _Array2DDblDel beseitigt (nur das erste Doppel wurde bereinigt)
- alle Variablen lokal deklariert (nun dürfte kein Fehler mehr bei Verwendung von Opt('MustDeclareVars') auftreten.
Edit 17.05.08
Durch die neue Prod 3.2.12.0 einige kleine Veränderungen in den Funktionen:
- _ArraySort_2ary
- _Array2DSortByLen
Edit 05.11.08
- neue Funktion: _Array2DMinMax()
- noch nicht in die ArrayMore.au3 eingebunden
- vorerst hier zu finden
_ArraySort_2ary()
sortiert 2D Arrays mehrstufig (z.B. nach Spalte 1 und für gleiche Werte in 1 wird nach Spalte 2 sortiert)
Habe dazu eine alternative, leistungsfähigere Version erstellt, die mit SQLite arbeitet.
_Array2DSortFree()
Die aktuelle Version, hier im selben Thread, Post 15
Diese Funktion kann aber nicht in die ArrayMore.au3 integriert werden - Erklärung s. hier
_Array2DSortByLen()
sortiert 1D/2D Arrays nach Länge der Einträge
_Array2DDblDel()
entfernt doppelte Einträge in 1D/2D Arrays
_Array2DInsert()
fügt 1 Element (leer oder mit Daten) an gegebener Position ein
arbeitet mit 1D/2D Arrays
_Array2DSplit()
splittet 1D/2D Arrays ab gegebener Position in 2 Arrays
optional wird eine Anzahl Elemente in ein Zielarray exportiert
_Array2DEmptyDel()
löscht leere Zeilen; in 2D Arrays Zeilen oder optional Spalten
_Array2DJoin()
verbindet 2 Arrays zu einem, 1D/2D -Arrays, auch untereinander
Größe der 2.ten Dimension muß nicht übereinstimmen
ab Prod 3.2.12.0 eine ähnliche Standard-UDF - aber nur für 1D-Arrays: _ArrayConcatenate()
_Array2DDelete()
löscht eine Zeile aus einem 1D/2D -Array am gegebenen ZeilenIndex
_Array2DSearch()
sucht nach allen oder einmaligem Auftreten des Suchbegriffs in einem 1D/2D -Array
ein Array mit dem/den gefundenen Index(es) wird zurückgeliefert
ab Prod 3.2.12.0 eine vergleichbare Standard-UDF: _ArrayFindAll()
_Array2DMirror()
spiegelt ein 2D-Array, Zeilen werden zu Spalten und umgekehrt
_SubArray2DGetEntry()
gibt den Wert eines Elements aus einem 1D/2D-Array als Element eines 1D/2D-Arrays zurück
_SubArray2DSetEntry()
setzt den Wert eines Elements in einem 1D/2D-Array als Element eines 1D/2D-Arrays
_Array2DAdd()
fügt einen Eintrag einem 1D/2D-Array am Ende hinzu
Spaltenwerte in 2D-Arrays sind durch '|' zu trennen
wird die Funktion ohne Wertübergabe aufgerufen, wird die Arraygröße um 1 erhöht
_Array2DPop()
gibt den letzten Wert eines 1D/2D-Arrays zurück und löscht ihn gleichzeitig vom Array
Arraygröße wird dabei um 1 verringert
_Array2DPush()
fügt Einzelwerte oder Arrays in 1D/2D-Arrays ein ohne deren Größe zu verändern
es kann vom Anfang oder vom Ende eingefügt werden, überzählige Elemente werden 'herausgeschoben'
(in etwa wie bei LIFO und FIFO in Registern)
DL bisher: 1430