Удаление URL-адреса (Microsoft Excel)
Джордану необходимо разбить URL-адрес на компоненты. Если полный URL (http://www.xyz.com/business) находится в столбце A, он хотел бы, чтобы в столбце B был основной домен (xyz или xyz.com), а в столбце — путь (бизнес). C.
Есть несколько способов решить эту проблему. Если вам нужно сделать это только раз или два, возможно, проще всего будет использовать инструмент «Текст в столбцы», доступный на вкладке «Данные» на ленте. Когда вы указываете, как вы хотите, чтобы инструмент раздвигал строки, укажите, что вы хотите использовать косую черту (/) в качестве разделителя. В зависимости от того, как собраны исходные URL-адреса, это может потребовать некоторой «очистки»
после того, как инструмент будет готов, но это быстро и легко.
Если вы делаете это чаще, вам может быть полезно использовать формулу для манипулирования URL-адресом. Первая задача — извлечь домен из URL-адреса, но это немного сложнее, чем кажется. Например, URL-адрес может начинаться с любого количества спецификаторов протокола (таких как http: //, https: //, ftp: // и т. Д.) Или может вообще не начинаться с спецификатора протокола. Кроме того, вы можете удалить «www».
номенклатура, как некоторые считают ее посторонней. Чтобы выяснить, где начинается «настоящий» домен, вы можете использовать эту формулу в столбце B:
=IFERROR(FIND("www.",$A1)+4,IFERROR(FIND("://",$A1,1)+3,1))
Что он делает, чтобы вернуть позицию первого символа после «www.», Если он доступен. Если его нет, то возвращается позиция первого символа после «: //», если он присутствует. Если его там нет, то возвращается число 1, поскольку URL-адрес не содержит префикса протокола или www.
С этим значением в столбце B вы можете начать извлекать нужные вам детали. Следующее, помещенное в столбец C, вернет домен, как уже было описано. По сути, он возвращает все, от позиции символа, показанной в столбце B, до следующей косой черты (/).
=MID(A1,B1,IFERROR(FIND("/",A1,B1)-B1,LEN(A1))
Если исходный URL-адрес включал «www.xyz.com», то формула возвращает «xyz.com». Если он содержит другой субдомен, кроме «www»
(например, «research.xyz.com»), то возвращается полный домен, включая субдомен. Функция ЕСЛИОШИБКА включается в случае, если после имени домена нет косой черты (/). (Функция НАЙТИ возвращает ошибку #VALUE, если не может найти элемент, который ищет.)
Чтобы выбрать путь после домена, вы можете использовать следующую формулу в столбце D:
=IFERROR(MID(A1,FIND("/",A1,B1)+1,LEN(A1)),"")
Формула возвращает все, что находится после первой косой черты (/) после имени домена. Если после имени домена нет косой черты, он ничего не возвращает. (Это опять же благодаря использованию функции ЕСЛИОШИБКА.)
Ключом к использованию приведенных выше формул, опять же, является вспомогательный столбец в столбце B. Если вы хотите избавиться от необходимости в столбце B, вам нужно будет заменить в двух других формулах все экземпляры B1 формулой (без знак равенства), принадлежащий B1. Это, конечно, сделало бы две другие формулы довольно длинными, особенно ту, которая отмечена для столбца C.
При желании вы можете создать макрос, который, по сути, выполняет то же самое, без необходимости во вспомогательном столбце. В следующем примере ожидается, что вы сделаете выбор, а затем вытащите части URL-адреса из ячеек и поместите их в два столбца справа от выбора.
Sub GetURLParts() Dim c As Range Dim sRaw As String Dim J As Integer For Each c In Selection sRaw = c.Text J = InStr(sRaw, "://") If J > 0 Then sRaw = Mid(sRaw, J + 3) If LCase(Left(sRaw, 4)) = "www." Then sRaw = Mid(sRaw, 5) End If J = InStr(sRaw, "/") If J > 0 Then c.Offset(0, 1) = Left(sRaw, J - 1) c.Offset(0, 2) = Mid(sRaw, J + 1) Else c.Offset(0, 1) = sRaw c.Offset(0, 2) = "" End If Next c End Sub
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (13320) применим к Microsoft Excel 2007, 2010, 2013, 2016, 2019 и Excel в Office 365.