0

标题可能不准确,但我想不出更好的解释方式。

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

目前,显示了源,但我需要能够从源中选择第一个 URL,然后将其显示在Label.

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

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

我已尽力解释这一点;如果您需要澄清,请告诉我。

4

1 回答 1

0

尽管您的问题尚不清楚,但您几乎可以使用 HtmlAgilityPack 或仅使用 Regex [Regular Expressions] 以从页面返回您想要的内容

例子

' 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
于 2013-07-25T16:53:08.420 回答