2011-12-05 9 views
0

次のように私は値を持つ配列を持っている:この配列はどのようにソートできますか?

0-10 
10-50 
50-100 
100-150 
150-200 
200+ 

これは私に次のことを与えて、実際にWPがアルファベット順にソートするWordPressのタクソノミーの配列、(または最初の数字の昇順)である:

//notice how 50-100 gets pushed to the bottom, due to ascending order applied 
0-10 
10-50 
100-150 
150-200 
200+ 
50-100 

私は、特定の状況の範囲であり、最後の50-100がUIを妨害するので、元の配列として注文を保持したいだけです!

この配列をソートする方法を知っている人はいますか?

答えて

1
PHP用の

natsort()

$nums = array('10-50', '100-150', '0-10', '150-200', '50-100', '200+'); 
natsort($nums); 
var_dump($nums); 
+0

素晴らしい:C#では、あなたは、LINQを使用することができます! natsortが仕事をした!ありがとう! –

1

文字列を解析して数値に変換し、最初の数値をソートします。それを実行する実際の仕組みは、プログラミング言語によって異なります。

var strings = new[] { "0-10", "10-50", "100-150", "50-100", "200+", "150-200" }; 
var sorted = strings.OrderBy(s => int.Parse(s.Split('+', '-')[0])).ToArray(); 
関連する問題