Регуляркой вырезать путь до последней папки, без имени файла - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Есть адреса нужна регулярка, чтобы работала на адреса, типа:
Листинг программы
  1. http://www.cyberforum.ru/vb-net/thread1061235.html
  2. https://www.cyberforum.ru/vb-net/thread1061235.html
  3. http://cyberforum.ru/vb-net/thread1061235.html
  4. https://cyberforum.ru/vb-net/thread1061235.html
На выходе необходимо:
Листинг программы
  1. cyberforum.ru/vb-net/
Может быть наведет на мысли:
Листинг программы
  1. Public Function GetDomen(ByRef _url As String) As String
  2. ' Получаем имя домена
  3. Return New Regex("(https://)?(www.)?([A-Z0-9\-a-z]+\.){1,}([A-Za-z]{2,})").Match(_url).Groups(0).Value
  4. End Function

Решение задачи: «Регуляркой вырезать путь до последней папки, без имени файла»

textual
Листинг программы
  1.     Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  2.  
  3.         Dim str = "http://www.cyberforum.ru/vb-net/thread1061235.html"
  4.         MsgBox(GetUrl(str))
  5.  
  6.     End Sub
  7.  
  8.  
  9.     Friend Function GetUrl(ByVal url As String) As String
  10.         Dim result as String = ""
  11.         Dim flag As Boolean = False
  12.  
  13.         url = StrReverse(url)
  14.  
  15.         For Each chr As Char In url
  16.             If chr = "/" Then
  17.                 flag = True
  18.             End If
  19.  
  20.             If flag Then
  21.                 result &= chr
  22.             End If
  23.  
  24.         Next
  25.  
  26.         result = StrReverse(result)
  27.  
  28.         If result.Contains("http://www.") Then
  29.             result = Replace(result, "http://www.", "")
  30.             Return result
  31.         End If
  32.  
  33.         If result.Contains("https://www.") Then
  34.             result = Replace(result, "https://www.", "")
  35.             Return result
  36.         End If
  37.  
  38.         If result.Contains("http://") Then
  39.             result = Replace(result, "http://", "")
  40.             Return result
  41.         End If
  42.  
  43.         If result.Contains("https://") Then
  44.             result = Replace(result, "https://", "")
  45.             Return result
  46.         End If
  47.  
  48.         Return result
  49.     End Function

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.692 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы