将文件名的最后一个字母替换为相应的字母数字

时间:2018-10-20 09:15:05

标签: javascript regex

我正在开发一个重命名器应用程序,该应用程序正在使用 JavaScript 进行各种操作。应用程序默认为我提供此功能 function(index, item) { },我必须在其中编写代码,看起来像这样function(index, item) {return item.newBasename...etc}

我想做的是将文件名最后一个字母替换为相应的字母编号 >。例如,从“文件名 AA ”到“文件名 A1 ”。

根据下面的示例,我该怎么做?

function(index, item) {
    return item.newBasename.replace(???);
}

2 个答案:

答案 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; 
}