gpt4 book ai didi

ruby - 按内容计算的最大值对数组排序

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

我有一个这样的字符串数组:

["Brazil (62)", "PalestinianTerritoryOccupied (6)", "Macedonia (2)", "Germany (6)"]

我想按最高值对它们进行排序,但这让我很困惑。我尝试过各种奇怪的、美妙的(但没用的)东西,比如:

cont.sort! { |it| it.scan(/\d+/).to_s.to_i}

最佳答案

sort_by {|e| e[/\d+/].to_i }.reverse

应该可以解决问题。您可以以更高效和优雅的方式编写此代码(请参阅评论),如下所示:

sort_by {|e| -e[/\d+/].to_i }

注意 -

使用排序你可以:

sort {|a, b| b[/\d+/].to_i <=> a[/\d+/].to_i }

编辑

String#[]已在评论中提出建议。

关于ruby - 按内容计算的最大值对数组排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9099724/

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