On Feb 2, 10:37 am, HenryRock <henryloke.myetr...@gmail.com> wrote: > I facing a problem in sorting : > > 1A,2A,3A,... 10A, 11A, 12A, 13A, 14A > [ ... ] > May I know is there have any plugin that can sort the sample data > above to 1A until 14A?
Note that it's not hard to do this in Javascript, though: var sorter = (function() { var regex = /^(\d+)([a-z]+)$/i; return function(o1, o2) { var left = regex.exec("" + o1); var right = regex.exec("" + o2); if (left) left[1] = Number(left[1]); if (right) right[1] = Number(right[1]); if (!left) return (right ? 1 : ( "" + o1 < "" + o2 ? -1 : ("" + o1 > "" + o2 ? 1 : 0)) ); if (!right) return -1 if (left[1] < right[1]) { return -1; } else if (left[1] > right[1]) { return 1; } else { if (left[2] < right[2]) { return -1; } else if (left[2] > right[2]) { return 1; } else { return 0; } } }; })(); var values = ["12A", "11B", "1A", "2C", "2B", "2A", "1a", "4B", "13C", "12C", "3B", "3A"]; // 1A,1a,2A,2B,2C,3A,3B,4B,11B,12A,12C,13C alert(values.sort(sorter)); Good luck, -- Scott