javascript - Sort mixed alpha/numeric array -
i have mixed array need sort alphabet , digit
[a1, a10, a11, a12, a2, a3, a4, b10, b2, f1, f12, f3] how sort be:
[a1, a2, a3, a4, a10, a11, a12, b2, b10, f1, f3, f12] i have tried
arr.sort(function(a,b) {return - b}); but sorts alphabetically. can done either straight javascript or jquery?
thank you!
var rea = /[^a-za-z]/g; var ren = /[^0-9]/g; function sortalphanum(a,b) { var aa = a.replace(rea, ""); var ba = b.replace(rea, ""); if(aa === ba) { var = parseint(a.replace(ren, ""), 10); var bn = parseint(b.replace(ren, ""), 10); return === bn ? 0 : > bn ? 1 : -1; } else { return aa > ba ? 1 : -1; } } ["a1", "a10", "a11", "a12", "a2", "a3", "a4", "b10", "b2", "f1", "f12", "f3"].sort(sortalphanum);
Comments
Post a Comment