Найти первое вхождение символа и удалить все остальные вхождения этого символа

Рейтинг: 0Ответов: 2Опубликовано: 22.03.2023

Пример: Есть строка 45.44.55.66, на выходе должно получиться 45.445566 Как это можно сделать, используя регулярные выражения?

Ответы

▲ 1Принят

Есть строка 45.44.55.66, на выходе должно получиться 45.445566 Как это можно сделать, используя регулярные выражения?

Такое можно сделать например таким образом...

const str = '45.44.55.66'
const re = /\.(\d\d)\.(\d\d)$/
console.log(str.replace(re, '$1$2'))

Еще можно сделать вот так...

    const str = '45.44.55.66'
    const re = /(?<!^\d+)\./g
    console.log(str.replace(re, ''))

▲ 0

Тоже вариант предложу с логическим или.

const str = `45.44.55.66
123.4325.474.77`;
const reg = /(?:(^\d+\.)|\.)/gm;
console.log(str.replace(reg, '$1'));

Захватываем в первую группу цифры от начала строки и первою точку после них, остальные символы точки удаляются.