有谁能告诉我如何对包含以数字开头的文件名的数组进行排序?因为以11,12,13等开头的字符串被认为低于2,所以我的结果如下:
[0] "1. File one.pdf" [1] "11. File eleven.pdf" [2] "12. File twelve.pdf" [3] "2. File two.pdf" [4] "3. File three.pdf"
我能做些什么来妥善排序吗?
答案 0 :(得分:7)
您可以使用natsort。或natcasesort,不区分大小写。如果有多个数字(即变音符号),则应确保使用正确的locale。
如果还不够,即。你还想要排序数字文字(“一”,“两”,“三”),你可以使用usort,它允许使用你的自定义回调作为比较函数。
答案 1 :(得分:1)
使用可以使用natsort
获得自然排序 查看。