我有一個字符串數組是這樣的:自定義排序字符串數組非字母
string[] names = new string[] { "john", "paul", "ringo", "george", "janis" };
我想排序使用自定義標準,此陣。它不能按字母順序排列。它可能按以下順序排列:pgrj
。
我試過實現一個新的IComparer
,但在Compare()
方法裏我不能使用string.Compare,因爲它會按字母順序排序,我不想這樣做。
現在的問題是:如何按以下順序對名稱數組進行排序:pgrj?在'j'情況下。詹尼斯可能在約翰之前。
謝謝。
看到這個答案 http://stackoverflow.com/questions/6984457/linq-complex-sorting/6984509#6984509 – yoozer8
純粹是基於這個自定義爲了這可能是一個有點複雜重新排列字母表?換句話說,如果「賈尼斯」來到「約翰」之前,那是因爲「a」會在「o」之前出現,而不管它在這個詞的哪個位置? – StriplingWarrior
在處理自定義排序時,Eric Lippert在這些博客文章中提供了一些很好的提示:http://bit.ly/piH3eu – DaveShaw