首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Ruby忽略"The",按字母顺序对标题列表进行排序?

如何使用Ruby忽略"The",按字母顺序对标题列表进行排序?
EN

Stack Overflow用户
提问于 2010-11-23 08:50:24
回答 2查看 616关注 0票数 1

我有一个从数据库中提取的标题列表,按字母顺序排序,即:

代码语言:javascript
复制
[
  'Morning Glory',
  'Red',
  'Skyline',
  'The Next Three Days'
]

如果忽略" the“,重新排序标题列表的最佳方式是什么?这样它就会变成:

代码语言:javascript
复制
[
  'Morning Glory',
  'The Next Three Days',
  'Red',
  'Skyline'
]
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-11-23 09:08:18

代码语言:javascript
复制
titles = ["Morning Glory", "Red", "Skyline", "The Next Three Days"]
titles.sort_by {|w| w.sub(/^the /i,"")}
=> ["Morning Glory", "The Next Three Days", "Red", "Skyline"]
票数 8
EN

Stack Overflow用户

发布于 2010-11-23 09:01:23

你能做的就是使用一个自定义的比较器进行排序。

请参阅:http://rosettacode.org/wiki/Sort_using_a_custom_comparator#Ruby

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4251742

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档