Я бы хотел отсортировать таблицу по алфавиту. Кроме номеров.Lua сортировать таблицу по алфавиту, за исключением номеров
Приведенный ниже код показывает, как таблица сортируется с функцией сравнения:
function(a,b) return a.N < b.N end
дает мне:
obj = {
[1] = {
["N"] = "Green 1";
};
[2] = {
["N"] = "Green 11";
};
[3] = {
["N"] = "Green 2";
};
[4] = {
["N"] = "Red 1";
};
}
Но я хочу, чтобы это быть отсортированы так:
obj = {
[1] = {
["N"] = "Green 1";
};
[2] = {
["N"] = "Green 2";
};
[3] = {
["N"] = "Green 11";
};
[4] = {
["N"] = "Red 1";
};
}
Возможно ли это?
Удалить все номера из ключа, прежде чем сортировать? Сортировка только по первому слову? и т. д. Если ваша таблица большая или вы собираетесь делать это, часто сохраняя кеш «сортируемого ключа», который вы создаете, вероятно, тоже хорошая идея. –