从字符串VB.NET中提取多个值

时间:2013-06-05 14:40:05

标签: arrays vb.net

我正在处理http网址,所有网址都是正确的,但有些网址如下: http://site.com/abgAz1nBs.jpg%20http://site.com/adtEh96Wj.jpg%20http://site.com/acum1N6qN.jpg

所以基本上这些是3个URL。我需要他们分开。但这不是唯一的问题,我需要使用“IF”语句来确认有一个包含多个“http://”的字符串,因为其他URL是正确的

2 个答案:

答案 0 :(得分:1)

试试这个:

Dim strURLToEvaluate As String = "http://site.com/abgAz1nBs.jpg%20http://site.com/adtEh96Wj.jpg%20http://site.com/acum1N6qN.jpg"

Dim strURLs As String() = Strings.Split(strURLToEvaluate, "%20http://")

If strURLs.Length > 1 Then MsgBox("More than one URL!")

For Each strURL In strURLs
    If Strings.Left(strURL, Len("http://")) <> "http://" Then strURL = "http://" & strURL
    MsgBox(strURL)
Next strURL

答案 1 :(得分:0)

您可以使用以下算法:

  • 检查字符串是否包含“%20http”(使用String.Contains)。
  • 如果是,则拆分为“%20http”(使用String.Split)。
  • 在除第一个之外的每个拆分字符串上添加“http”(使用普通字符串连接)。

实施这些步骤应该很容易,并且(故意)留给读者作为练习。实际上,在正确实现它们之后,您可能会意识到您可以完全跳过第一步。