[решено] [Работа с текстом] - как убрать из списка со ссылками лишнее?

Ответить
Аватара пользователя
flower

[решено] [Работа с текстом] - как убрать из списка со ссылками лишнее?

Сообщение flower »

День добрый.

Имеется файл экселевский (бланк), в нем список ссылок на товары следующего вида:



httр://
www.vvv.ww/goods
?
adv=23213123&id=000000001&shop=1223123123



для удобства я их преобразовываю примерно в такой вид:



httр://
www.vvv.ww/goods?id=000000001




Подскажите софтины, которые могут по маске произвести преобразование, убрав лишнее из ссылок?
Аватара пользователя
Iska

Re: [решено] [Работа с текстом] - как убрать из списка со ссылками лишнее?

Сообщение Iska »

Цитата flower:



Подскажите софтины, которые могут по маске произвести преобразование, убрав лишнее из ссылок?
[решено] [Работа с текстом] - как убрать из списка со ссылками лишнее?




«Софтина», как Вы выразились, именуется VBA и встроена в Microsoft Excel. Пишете простой макрос, в котором пользуете регулярное выражение для поиска и замены. Детали реализации будут зависеть от конкретного содержания рабочей книги, и без выкладывания её образца бессмысленны.
Аватара пользователя
Vadikan

Re: [решено] [Работа с текстом] - как убрать из списка со ссылками лишнее?

Сообщение Vadikan »

Да можно и без макроса. Просто дважды разбить
текст по столбцам
- первый раз с разделителем ?, а второй - с &. Потом собрать нужную формулу, объединяя ячейки с помощью &.



Изображение
Аватара пользователя
Drongo

Re: [решено] [Работа с текстом] - как убрать из списка со ссылками лишнее?

Сообщение Drongo »

Vadikan, Вад, класс. Только начал читать тему, думал сейчас напишу побыстренькому функцию, однако сам запутался во вложеных уровнях и функциях. Долистал тему до конца, увидел твоё решение. Элегантное и не обременяющее пользователя, тем более для разовой задачи. Тем более всё делает мастер, да ещё и текст после обработки остаётся весь, т.е. можно работать с какой угодно его частью.



Но ради спортивности, доделал свой вариант, хотя по трудозатратам проигрывает, да и если смотреть объективно, формат ссылки поменяется, скажем id или shop и вся конструкция улетает в трубу. По разделителям бить надёжднее. Изображение



Код:

Код: Выделить всё

=СЦЕПИТЬ(ЛЕВСИМВ(A1;ПОИСК("~?";A1;1)); ПСТР(A1; ПОИСК("id"; A1; 1); ПОИСК("&shop";A1;1) - ПОИСК("id"; A1; 1)))

Изображение
Ответить

Вернуться в «Хочу все знать»