我正在开发一个重命名器应用程序,该应用程序正在使用 JavaScript 进行各种操作。应用程序默认为我提供此功能 function(index, item) { }
,我必须在其中编写代码,看起来像这样function(index, item) {return item.newBasename...etc}
。
我想做的是将文件名的最后一个字母替换为相应的字母编号 >。例如,从“文件名 AA ”到“文件名 A1 ”。
根据下面的示例,我该怎么做?
function(index, item) {
return item.newBasename.replace(???);
}
答案 0 :(得分:2)
您可以将String.prototype.replace
与正则表达式配合使用来匹配文件名的最后一个字母,并可以使用一个函数来查找字母表中相应的字母位置。
例如:
const basename = 'hello-world'.replace(/([a-z])$/i, l => 'abcdefghijklmnopqrstuvwxyz'.indexOf(l.toLowerCase()) + 1);
console.log(basename);
答案 1 :(得分:0)
我终于找到了解决方法...
function(index, item) {
str=item.newBasename;
num=str.toUpperCase().slice(-1).charCodeAt(0) - 64;
if (num>0 && num < 27) str = str.slice(0, str.length - 1) + num;
return str;
}