gpt4 book ai didi

arrays - 如何对字符串数组进行排序

转载 作者:数据小太阳 更新时间:2023-10-29 07:41:33 25 4
gpt4 key购买 nike

我正在研究 ruby​​ on rails,我是新来的,也是 ruby​​ on rails。我正在做一个项目,发现一些对包含图像名称的字符串数组进行排序的问题。我尝试了很多我知道对我没有帮助的算法。当我调用图像提取服务时,它给了我这个数组。

示例:

["page-1_1.png",
"page-1_10.png",
"page-1_11.png",
"page-1_2.png",
"page-1_3.png",
"page-1_4.png",
"page-1_5.png",
"page-1_6.png",
"page-1_7.png",
"page-1_8.png",
"page-1_9.png"]

我想像这样对这个数组进行排序:

["page-1_1.png",
"page-1_2.png",
"page-1_3.png",
"page-1_4.png",
"page-1_5.png",
"page-1_6.png",
"page-1_7.png",
"page-1_8.png",
"page-1_9.png",
"page-1_10.png",
"page-1_11.png"]

我尝试了很多事情来排序,但无法得到任何解决方案。请帮助我。

最佳答案

names.sort_by { |name| name.scan(/\d+/).map(&:to_i) }

这将查找每个文件名中的所有数字并按所述数字排序。请注意,数组是通过比较第一个元素来排序的,如果相等,则比较第二个元素,依此类推。

关于arrays - 如何对字符串数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42392524/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com