2009-12-30 68 views

回答

3

可以使用LINQ做到這一點,就像這樣:

Dim input = "apples,fish,oranges,bananas,fish" 
Dim strings = input.Split(","c).Distinct().OrderBy(Function(s) s) 
1

我不是一個程序員VB.NET,但我可以給你一個建議:

  1. 分割字符串到一個數組
  2. 通過創建第二個陣列
  3. 週期第一個數組,添加任何不在第二個數組中的值。

完成後,您的第二個數組將只有唯一值。

+1

你可以使用VB.Net的Array.Sort排序最後的數組;並根據需要使用Join(數組,分隔符)方法將其轉換回字符串。 – 2009-12-30 00:58:10

+0

+1感謝您提供更多信息,Ed。 – Sampson 2009-12-30 00:58:53

6

很多您的問題都是很基本的,因此而不是提供的代碼我要提供的思維過程,讓你從學習實施它。

首先,你有一個包含多個項目的逗號分隔的字符串,所以你需要在逗號分割字符串來獲取一個列表。你可以使用String.Split

然後,您可以使用IEnumerable<T>的某些擴展方法來過濾和排序列表。要看的是Enumerable.DistinctEnumerable.OrderBy。你可以把它們寫成普通的方法,或者使用Linq語法。

如果您需要將其重新獲得逗號分隔的字符串,則需要使用String.Join方法重新加入字符串。請注意,這需要一個數組,因此Enumerable.ToArray將會有用。

+1

+1「教一個人釣魚......」:) – Sampson 2009-12-30 00:59:27