qsy666888 发表于 2021-10-25 18:25:19

还是关于编号排序问题(已解决)

本帖最后由 qsy666888 于 2021-10-27 10:26 编辑

要求:编号排序按第一列从小到大排序,第二列数字在第一列的根目录下从小到大排序,第三列在第二列的根目录下排序。我想如果会用正则的是不是会比较好一点。最终结果排序如图

#Include <Array.au3>
Local $text1 = ''

$ini = '2001-103,1001-201-001,2001-103-001,3005-101,2011-101-002,2011-101-001,2011-101,3005-401-001,2001-103-002,1010-101-001,3005-401,1001-101-001,1010-101,3005-401-001,1001-201,1001-101,3005-101-001,1001-101-002'

$sprot = StringSplit ( $ini, "," )

Global $text[$sprot]
For $i = 0 To $sprot-1
      $text[$i] = $sprot[$i+1]
Next
_ArraySort($text)

For $j = 0 To $sprot-1
                  $text1 = $text1& $text[$j]&@CRLF      
Next

MsgBox(0,0,$text1)

afan 发表于 2021-10-25 19:12:48

每一列按最大位数前补零,再排序就行了。如 2-1-103 > 2-01-103

qsy666888 发表于 2021-10-25 20:42:31

afan 发表于 2021-10-25 19:12
每一列按最大位数前补零,再排序就行了。如 2-1-103 > 2-01-103

谢谢!谢谢!
页: [1]
查看完整版本: 还是关于编号排序问题(已解决)