我想对包含名称和数字的字符串数组进行排序。但是我想改进字母数字排序顺序来获得像
这样的订单John 8 test
John 9 test
John 10 test
而不是在顶部进行“John 10 test”,因为“1”< “8”< “9”。我的想法是插入任意数字的数字位数,以便在内部排序的数组变为:
John 18 test
John 19 test
John 210 test
现在是一个字母数字正确排序的数组。
如何以简单的方式插入数字的任何想法? RegExp将是完美的。我在nodejs / JavaScript中做了这一切。
提前致谢!
heinob
答案 0 :(得分:1)
我发现(一)回答了自己:
var a = "John 352 Name 1 test 23 better";
a.replace( /\d+/g, function( match, number) {
return match.length + match;
});
我想要的是: - )