gpt4 book ai didi

ruby - 将 ruby​​ 数组排序为字母数字

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

我正在尝试按长度和字母数字对 Ruby 中的数组进行排序:

所需的顺序是:

  • site.com?page=7
  • site.com?page=8
  • site.com?page=9
  • site.com?page=880

我一直在尝试 array.sort 和 sort!但他们似乎都没有成功,因为他们会将 880 放在 8 之后。

我将如何以最有效的方式做到这一点?

最佳答案

假设你有一个数组:

a = ["site.com?page=7", "site.com?page=8", "site.com?page=9", "site.com?page=880"]

然后你可以这样做:

a = a.sort_by{|t| t.split(/page=/)[1].to_i}

简而言之,我使用自定义排序标准,该标准是将字符串按“page=”拆分,然后在 的第一个匹配项之后使用字符串的数值(to_i) >page= 用于排序。

关于ruby - 将 ruby​​ 数组排序为字母数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15006776/

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