我想在日期列此塊排序:如何在日期排序此rebol域名塊?
["domain1.com" 18-Jan-2011 #"^/"
"domain2.com" 20-Aug-2011 #"^/"
"domain3.com" 23-Dec-2011 #"^/"
"domain4.com" 22-Sep-2011 #"^/"]
我看不出如何真正與排序這麼做/跳躍功能在這裏解釋,這不是一清二楚了我: http://www.rebol.com/docs/words/wsort.html
我想在日期列此塊排序:如何在日期排序此rebol域名塊?
["domain1.com" 18-Jan-2011 #"^/"
"domain2.com" 20-Aug-2011 #"^/"
"domain3.com" 23-Dec-2011 #"^/"
"domain4.com" 22-Sep-2011 #"^/"]
我看不出如何真正與排序這麼做/跳躍功能在這裏解釋,這不是一清二楚了我: http://www.rebol.com/docs/words/wsort.html
你有三個字段的組,並且你想對字段2進行排序?
這應做到:
data: [
"domain1.com" 18-Jan-2011 #"^/"
"domain2.com" 20-Aug-2011 #"^/"
"domain3.com" 23-Dec-2011 #"^/"
"domain4.com" 22-Sep-2011 #"^/"
]
sort/skip/compare data 3 2
您希望/all
改進與比較器功能一起使用。這使得它將子系列(與跳過長度一樣長)傳遞給比較器作爲「記錄」,而不是僅傳遞該系列的第一個元素。
>> sort/skip/compare/all ["domain1.com" 18-Jan-2011 #"^/"
"domain2.com" 20-Aug-2011 #"^/"
"domain3.com" 23-Dec-2011 #"^/"
"domain4.com" 22-Sep-2011 #"^/"] 3 func [a b] [
(second a) < (second b)
]
== ["domain1.com" 18-Jan-2011 #"^/"
"domain2.com" 20-Aug-2011 #"^/"
"domain4.com" 22-Sep-2011 #"^/"
"domain3.com" 23-Dec-2011 #"^/]
它在Rebol 2中工作,但在Rebol 3的版本中我正在運行,它不工作。這是一個錯誤。
啊,從來沒有被吸收,你可以只使用一個偏移存在。即使在最新的r3 * sort/skip/compare/all [「a」2「b」1] 2 func [ab] [print a print b] *似乎在做錯誤的事情(打印一行和b在一條線上) – HostileFork 2010-05-18 23:10:22
謝謝你,這個幫助應該像你一樣清楚:) – 2010-05-19 05:11:01
@hostile很高興,這讓你發現了R3中的一個潛在的bug;至於我,我仍然在使用R2。 – 2010-05-19 05:11:36