Open luiguangguan opened 1 month ago
function naturalSort(arr: string[]): string[] {
return arr.sort((a, b) => {
// 提取 a 和 b 中的所有數字
const numsA = a.match(/\d+/g)?.map(Number) || [];
const numsB = b.match(/\d+/g)?.map(Number) || [];
// 比較提取的數字
for (let i = 0; i < Math.min(numsA.length, numsB.length); i++) {
if (numsA[i] !== numsB[i]) {
return numsA[i] - numsB[i];
}
}
// 如果提取的數字部分相等,則比較數字的數量(長度)
return numsA.length - numsB.length;
});
}
这样实现?
重命名的目的之一,就是将这些长度不一的文件名,变成一样的长度。
用另一个方式处理了这个问题:添加修改之后的文件名的排序(预览的排序),可以检查最终生成的结果,是否满足排序要求。
哦,是个不错的操作,我没想到,多谢
以下是同一組文件在Windows中的排序和在rename中的排序
Windows
rename