VB.NET - 选择文本直到某个字符

时间:2013-07-25 14:23:15

标签: .net vb.net

标题可能不准确,但我想不出是否有更好的解释方法。

我正在为客户开发一个项目,该项目利用来自多个不同网站的HTML源代码。

目前,显示的是来源,但我需要能够从源中选择第一个网址,然后将其显示在Label上。

我的问题是。 VB文本框不显示超链接(据我所知)没有任何工具可以从字符串中选择超链接。

我需要能够从多行文本框中获取第一个超链接。链接通常可能很长,通常不会以.com或.net结尾,或者只是一个域,然后是数字和字母的长组合。我需要能够提取此URL。它被封装在HTML框架内,链接将根据它访问的网站而发生变化,所以我认为我真正想要的是一种方法来提取HTML框架中的链接,然后删除多余的HTML留下原始链接。

我尽力解释这个问题;如果您需要澄清,请告诉我。

1 个答案:

答案 0 :(得分:0)

虽然您的问题不明确,但您可以使用HtmlAgilityPack或只使用Regex [正则表达式]以便从页面返回您想要的内容

示例

' The input string.
Dim value As String = "/content/alternate-1.aspx"

' Invoke the Match method.
Dim m As Match = Regex.Match(value, _
                 "content/([A-Za-z0-9\-]+)\.aspx$", _
                 RegexOptions.IgnoreCase)

' If successful, write the group.
If (m.Success) Then
    Dim key As String = m.Groups(1).Value
    Console.WriteLine(key)
End If