2015-05-07 2 views
-1

Как я могу извлечь конкретное слово или слова из URL-адреса, чтобы отобразить их в другом столбце в Google Spreadsheets? URL-адрес: https://seatgeek.com/bands/katy-perry?p=3, и мне нужно извлечь «katy perry» из этого URL-адреса. Я также должен создать вторую формулу, которая отобразит тот же URL-адрес с датой из другого столбца в электронной таблице.Мне нужно извлечь конкретное слово или слова из URL-адреса

+0

Что вы пытаетесь? Всегда ли это будет «katy-perry» или текст будет меняться? – Soulfire

+0

Я попытался, НАЙТИ, ПОИСК ... Это будет отличаться, поскольку список зависит от каждой строки. –

ответ

1

Посмотрите регулярные выражения для VBA. Таким образом, вы можете выполнять сопоставление с большой гибкостью.

Здесь:

http://www.macrostash.com/2011/10/08/simple-regular-expression-tutorial-for-excel-vba/

или еще лучше, здесь:

How to use Regular Expressions (Regex) in Microsoft Excel both in-cell and loops

+0

Я довольно Excel неграмотный, так что это все греческие для меня. –

1

Как это - изменение A3 по мере необходимости, чтобы соответствовать ячейки с URL: =SUBSTITUTE(MID(A3,SEARCH(";",SUBSTITUTE(A3,"/",";",4))+1,FIND("?",SUBSTITUTE(A3,"/",";",4))-SEARCH(";",SUBSTITUTE(A3,"/",";",4))-1),"-"," ")

Что это значит, это отключить «/» прямо перед «кат» y-perry 'с уникальной (к этой ячейке) меткой, точкой с запятой. Затем, используя MID(), извлеките информацию между замещенным ';' и «?».

Редактировать: Это должно работать с любой длиной имени (т. Е. «Katy-perry», «katyyyyyy-peeerrryyy»). Обратите внимание, что предполагается, что вы всегда будете иметь URL с четырьмя «/» перед именем исполнителя.

+0

Будет ли это работать и в таблицах Google? –

+0

@DerekTheaker - я не уверен, я никогда не использовал Google Spreadsheets, но я бы поспорил, что у них есть аналогичная функция, которая должна помочь. Изменить: похоже, что Jeeped (ниже) имеет совместимое с Google Spreadsheets решение. – BruceWayne

0

Единственный URL-адрес образца, который вы указали, оставляет желать лучшего, будет ли конфигурация стандартной для многих других URL-адресов, которые вы указали. Если это типично для того, как создаются другие URL-адреса, вы можете определить знак вопроса и последнюю косую черту для анализа katy-perry. Здесь все в порядке.

Следующие инструкции предполагают, что https://seatgeek.com/bands/katy-perry?p=3 находится в A1.

  1. Добавить знак вопроса до конца на всякий случай, если его нет в URL-адресе и используйте первый вопросительный знак, найденный для удаления чего-либо права.
    =LEFT(A1, FIND("?", A1&"?")-1)
  2. Заменить все косые черты на 99 пробелов.
    =SUBSTITUTE(LEFT(A1, FIND("?", A1&"?")-1), "/", REPT(" ", 99))
  3. Пил с правого большинства 99 символов и обрезать лишние пробелы.
    =TRIM(RIGHT(SUBSTITUTE(LEFT(A1, FIND("?", A1&"?")-1), "/", REPT(" ", 99)), 99))

Результат должен Katy-грушевый. Эта формула удобна для Google-Spreadsheet.

Parse text from Google-Sheet

+0

Просто любопытно, почему вы решили сделать 99 пробелов? Просто чтобы убедиться, что знаете набор, который нужно искать? – BruceWayne

+0

@ user3578951 - a) Вам нужно больше пробелов, чем символов, в любом месте, которое вы хотите проанализировать, и * 9 * не показалось достаточным для всех ситуаций. B) если вы собираетесь набирать 2 цифры, идите на максимум, чтобы эти два цифры позволяют; * 50 * кажется глупым, если вы можете использовать одинаковое количество цифр для * 99 *. – Jeeped