Lua Table Sort

lua의 table 정렬 lua에서 table.sort(t,func) 함수를 이용하여 정렬한다. t는 테이블, func는 함수이다. table.sort(t) 했을 경우 요소가 문자,숫자를 기본 정렬한다. 하지만 오름차순, 내림차순, 대소문자 구별 등 다양한 제어를 하기 위해서는 아래 함수를 만들어 활용하면 편리하다. 주의할 점은 원본 table의 위치가 정렬상태로 바뀌게 된다. 원본을 유지하고 싶다면 복사본을 만든 다음 정렬해야 한다. 필터 함수 정의 -- *sort.asc* : 숫자,문자,UTF8 모두 가능 local function ascending(a,b) return a < b -- a가 b보다 작으면 true end -- *sort.desc* : 숫자,문자,UTF8 모두 가능 local function descending(a,b) return a > b -- a가 b보다 크면 true end -- *sort.bylength* local function bylength(a,b) return #a < #b -- 문자열의 길이에 따라 오름차순 정렬 end -- *sort.iascendig* - 대소문자 구분 없이 오름차순 정렬 local function iascendig(a,b) return string.lower(a) < string.lower(b) end -- *sort.idescending* - 대소문자 구분 없이 정렬 local function idescending(a,b) return string.lower(a) > string.lower(b) end -- *sort.bykey* local function bykey(key) return function(a,b) return a[key] < b[key] end end 활용 local numbers = {5, 3, 8, 1, 2} table.sort(numbers, ascending) -- 오름차순 정렬 local strings = {"banana", "apple", "cherry"} table.sort(strings, alphabetical) -- 알파벳 순 정렬 local objects = { {name = "Alice", age = 30}, {name = "Bob", age = 25}, {name = "Charlie", age = 35} } table.sort(objects, byKey("age")) -- 나이에 따라 오름차순 정렬 REFERENCE duck.ai Quick Guide to Lua Table Sort: Mastering Order with Ease https://luascripts.com/lua-table-sort

2025-08-29 · 220 words