Извлечение ссылки HTTP (http://) для строки в VB.NET - PullRequest
0 голосов
/ 28 сентября 2011

В моей таблице есть следующие значения столбцов

Пример значений:

  1. Ознакомьтесь с публикацией в блоге группы ABC о XYZ сегодня! http://blog.saedg.org/

  2. 'Присоединяйтесь к ABC, призывая округ помочь создать новые рабочие места и экономические возможности для XYZCounty. http://starabcnet.com/news/science/environment/article_4b3d2f7e-96c6-5007-a036-b4613250755e.html

Я хочу, чтобы две переменные содержали ссылки и контент отдельно - пример:

  1. Var1 = Ознакомьтесь с публикацией в блоге группы ABC о XYZ Today!
    Var2 = http://blog.saedg.org/

  2. Var1 = Присоединяйтесь к ABC, призывая округ помочь создать новые рабочие места и экономические возможности для XYZCounty
    Var2 = http://starabcnet.com/news/science/environment/article_4b3d2f7e-96c6-5007-a036-b4613250755e.html

Полагаю, это можно сделать с помощью строковых функций или регулярного выражения.

Ответы [ 2 ]

1 голос
/ 28 сентября 2011

Попробуйте это:

' This is the regex that is used to get the addresses
Public Shared URL As New Regex("(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])", RegexOptions.Compiled)

' URL.Matches returns a collection of results that you can iterate through eg:
for each ele in URL.Matches("INPUT STRING")
    ' do something with each link that you get 
    ' like removing them from the input string
next
0 голосов
/ 28 сентября 2011

Можете ли вы разделить столбец на два разных столбца?Например, «Сообщение» и «Ссылка».

Если вы не можете сделать это, предполагая, что Http всегда находится в конце строки, и нет другой ссылки на HTTP: // в строке,Вы можете получить строку после "HTTP://".

Посмотрите на методы строки IndexOf и Substring в VB.NET.

Примерно так (я не тестировал):

string url = var.SubString(var.IndexOf("http"))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...