jugador Posted July 15, 2021 Posted July 15, 2021 (edited) _ArrayReverse work only on 1D array so.... __ReverseArray which work on 1D & 2D Array expandcollapse popup#include <Array.au3> Local $Eg_1[][] = [['A', 1, 11], ['B', 2, 22], ['C', 3, 33], ['D', 4, 44], ['E', 5, 55], ['F', 6, 66], ['G', 7, 77], ['H', 8, 88]] _ArrayDisplay($Eg_1) _ArrayDisplay(__ReverseArray($Eg_1)) _ArrayDisplay(__ReverseArray($Eg_1, 2, 5)) Local $Eg_2[] = [1, 2, 3, 4, 5, 6, 7, 8] _ArrayDisplay($Eg_2) _ArrayDisplay(__ReverseArray($Eg_2)) _ArrayDisplay(__ReverseArray($Eg_2, 2, 5)) ; #FUNCTION# ============================================================================= ; Name...........: __ReverseArray ; Description ...: ; ======================================================================================== Func __ReverseArray($o_Array, $o_StartPoint = 0, $o_EndPoint = UBound($o_Array) - 1) If Not IsArray($o_Array) Then Return SetError(1) If $o_StartPoint < 0 Then Return SetError(1) If $o_StartPoint >= $o_EndPoint Then Return SetError(1) If $o_EndPoint > (UBound($o_Array) - 1) Then Return SetError(1) Local $o_Column = UBound($o_Array, 2) If $o_Column <= 1 Then $o_Column = 1 Local $o_Prefix = '' Local $o_Suffix = '' If $o_StartPoint > 0 Then _ $o_Prefix = _ArrayToString($o_Array, ($o_Column <= 1 ? @CRLF : '|'), 0, $o_StartPoint - 1, @CRLF, -1, -1) & @CRLF If $o_EndPoint < (UBound($o_Array) - 1) Then _ $o_Suffix = @CRLF & _ArrayToString($o_Array, ($o_Column <= 1 ? @CRLF : '|'), $o_EndPoint + 1, UBound($o_Array) - 1, @CRLF, -1, -1) Local $o_ArrayExt = _ArrayExtract($o_Array, $o_StartPoint, $o_EndPoint, -1, -1) Local $o_String = '' For $i = UBound($o_ArrayExt) - 1 To 0 Step -1 $o_String &= _ArrayToString($o_ArrayExt, '|', $i, $i, '|', -1, -1) & @CRLF Next $o_String = StringTrimRight($o_String, 2) Local $x_Array[0][$o_Column] Local $o_Temp = $o_Prefix & $o_String & $o_Suffix _ArrayAdd($x_Array, $o_Temp, 0, '|') Return $x_Array EndFunc Edited July 17, 2021 by jugador
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now