Simonetos The Greek Ответов: 2

Заменить последнюю букву соответствующим алфавитным номером?


С помощью переименования приложений который делает различные вещи, используя Язык JavaScript- Я пытаюсь это сделать. заменять то последнее письмо некоторых имен файлов, к соответствующему алфавитный номер Например, из "Filename AОдин"к "в названии файла1"С "в названии файлаБ"к "в названии файла2" прием.

Что я уже пробовал:

Это приложение дает мне эту функцию по умолчанию...
function(index, item) { }
И я должен написать там свой код, который может выглядеть примерно так...
function(index, item) {return item.newBasename...etc}.
Основываясь на приведенном ниже примере, как я могу это сделать?
function(index, item) {
    return item.newBasename.replace(???);
}

Patrice T

Регулярное выражение кажется мне самым сложным способом.
вы должны попробовать "строковые функции"

Afzaal Ahmad Zeeshan

Всегда ли это последний символ, который вы хотите заменить, или есть какая-то другая сложность, например, только заменить его дубликатом и т. д.?

Я нахожу регулярное выражение и излишний способ сделать это, вы можете легко сделать, простой способ сделать это будет вставить число в предпоследний индекс и удалить последний символ. 2 операции, да, но простые и понятные.

Simonetos The Greek

Да, мой друг, это всегда последняя буква (!!!), которую я хочу заменить. Могу я привести пример вашего решения, пожалуйста?

2 Ответов

Рейтинг:
9

Simonetos The Greek

Наконец я нашел решение...

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


Рейтинг:
1

Bryian Tan

Основываясь на своем посте, вы можете обновить код, чтобы использовать следующий пример. В приведенном ниже примере последний символ строки будет заменен соответствующим алфавитным номером.

var s = "Filename AA";
s = s.replace(/\w([^\w]*)$/, "1");
console.log(s); //Filename A1

var s = "Filename A1";
s = s.replace(/\w([^\w]*)$/, "B");
console.log(s);  //Filename AB


Simonetos The Greek

Спасибо за ваш ответ, мой друг, но с вашим примером все мои имена файлов изменятся на 1 в последней букве. Я этого не хочу. Допустим, у меня есть эти файлы...
Именем АА, АБ именем, именем переменного тока и т. д. Вот что я хочу сделать... Именем А1, А2 Именем, Именем А3!!!