• JavaScript

Как заменить один символ строки на другой в JavaScript?

Добрый день.

Начал изучать регулярные выражения в js. Хочу понять, как заменить, например, третью запятую в строке.

Научился менять первую, последнюю и все подряд. Но это легко.

А как поменять четвертую, пятую и т.д.?
function regular(str) {
  res = str.split('.')
  return res.join(";").replace(/;$/,".") // Вася Иванов; Маня Петрова; Кузя Кузнецов; Ваня Васев.
  // return res.join(";").replace(/;/g,".") // Вася Иванов. Маня Петрова. Кузя Кузнецов. Ваня Васев.
  // return res.join(";").replace(/;/,".") // Вася Иванов. Маня Петрова; Кузя Кузнецов; Ваня Васев;
}
console.log(regular("Вася Иванов. Маня Петрова. Кузя Кузнецов. Ваня Васев."))

Комментарии: 1

Александр Мальцев
Александр Мальцев

Привет!

Если нужно поменять, например, 4 запятую в строке на точку, то это можно сделать так:
const str = 'Один, Два, Три, Четыре, Пять';

let index = 0;
const result = str.replace(/(.*?,)/g, (match) => {
  index++;
  return (index === 4) ? match.replace(',', '.') : match;
});
// выведем результат в консоль
console.log(result);