2010-01-05 4 views
0

У меня есть два arraylists, которые содержат ссылки в одном и корневом url в другом. Иногда списки не равны по количеству, и я хотел бы перебирать список ссылок, и если он содержит соответствующий корневой URL, добавьте его в третий список, но также избегайте любых дубликатов. Я пробовал это, но не получаю согласованных результатов.vb.net, итерация через arraylists

Любые идеи оценили, спасибо.

For Each link As String In urls 
      For Each part As String In post 
       If part.Contains(link) Then 
        newPost.Add(part) 
       End If 
      Next 
     Next 

Возможно, есть другой способ; в основном часть в сообщении - это ссылка на страницу и содержит корневой URL (который является ссылкой в ​​URL-адресах). После извлечения всего этого мне нужно обеспечить соответствие двух списков.

ответ

1

Если вы используете 2008, то вы можете использовать LINQ

 

For each link as String in urls 

    Dim results = (FROM part IN post _ 
        SELECT part _ 
        WHERE part.Contains(link)). Distinct 
Next 

Вы можете заменить. Выделяются другими функциями, такими как First, FirstOrDefault, ToList, ToArray, GroupBy, Sort и список.

+0

Спасибо за ответ. Я попробовал, и это не сработало. Позвольте мне добавить дополнительную информацию для разъяснений. Arraylist post содержит первые несколько элементов в качестве примера: 0 - http://www.blogdetecnologia.com/actualidad/aprobado-oficialmente-cargador-universal-microusb/ 1- http://www.blogdetecnologia.com 2- http://landmine.com.ph/para-las-ventas-del-iphone-apple-original-3gs-32gb-en-200euros/ 3- http://landmine.com.ph и URL-адреса содержит 0 - http://www.blogdetecnologia.com 1 - http://landmine.com.ph вот в чем проблема; я получаю новый список с теми же сообщениями после повторения через него – vbNewbie

Смежные вопросы