Katie_Deely,
Do you have any control over the file naming? If so then padding the numbers with leading zeroes will get you the sort you want.
If not then you can do something like this:
#include <Array.au3>
; Simulated file list
Local $aArray[] = ["E:\Pics\1.jpg", "E:\Pics\10.jpg", "E:\Pics\3.jpg", "E:\Pics\100.jpg", "E:\Pics\2.jpg"]
; Add a column
_ArrayColInsert($aArray, 1)
; And you get this:
_ArrayDisplay($aArray, "New column", Default, 8)
; Now extract the number part, pad it and add it to the new column
For $i = 0 To UBound($aArray) - 1
; Extract the numeric part
$sNumber = StringRegExpReplace($aArray[$i][0], "^(.*\\)(\d+)(\..*)$", "$2")
; Padd it - here we use a max of 4 characters
$sPadded = StringFormat("%04s", $sNumber)
; And store it
$aArray[$i][1] = $sPadded
Next
; And here is the result
_ArrayDisplay($aArray, "Added padded", Default, 8)
; Now sort the array on the padded column
_ArraySort($aArray, 0, 0, 0, 1)
; Which gives this
_ArrayDisplay($aArray, "Sorted padded", Default, 8)
; Now delete the added column (and revert to 1D array)
_ArrayColDelete($aArray, 1, True)
_ArrayDisplay($aArray, "Final", Default, 8)
M23