新手请教一个排序问题

2022-12-30 17:25:57 +08:00
 dabaitu

一个 list 里有如下内容

[
    "Chuang.guan.dong.2008.S01E01.mp4",
    "闯关东.Brave.The.Journey.To.Northeast.S01E01.1080p.mp4",
    "闯关东.Brave.The.Journey.To.Northeast.S01E01.2160p.mkv",
    
    "Chuang.guan.dong.2008.S01E02.mp4",
    "闯关东.Brave.The.Journey.To.Northeast.S01E02.1080p.mp4",
    "闯关东.Brave.The.Journey.To.Northeast.S01E02.2160p.mkv",
    
    "Chuang.guan.dong.2008.S01E03.mp4",
    "闯关东.Brave.The.Journey.To.Northeast.S01E03.1080p.mp4",
    "闯关东.Brave.The.Journey.To.Northeast.S01E03.2160p.mkv"
]

如何排序成这样下列这样呢?

[
    "Chuang.guan.dong.2008.S01E01.mp4",
    "Chuang.guan.dong.2008.S01E02.mp4",
    "Chuang.guan.dong.2008.S01E03.mp4",

    "闯关东.Brave.The.Journey.To.Northeast.S01E01.1080p.mp4",
    "闯关东.Brave.The.Journey.To.Northeast.S01E02.1080p.mp4",
    "闯关东.Brave.The.Journey.To.Northeast.S01E03.1080p.mp4",

    "闯关东.Brave.The.Journey.To.Northeast.S01E01.2160p.mkv",
    "闯关东.Brave.The.Journey.To.Northeast.S01E02.2160p.mkv",
    "闯关东.Brave.The.Journey.To.Northeast.S01E03.2160p.mkv"
]
1066 次点击
所在节点    C#
5 条回复
ocean1477
2022-12-30 17:31:33 +08:00
看上去像是个 最长公共前缀的问题。
AoEiuV020CN
2022-12-30 17:34:47 +08:00
需要知道明确的规律,
比如是否保证每部片子各一集这样排列的,
是否保证分辨率都是.XXXp.这样放在后缀前一节的,
是否保证集数都是 S01Exx 这样排列的,
crazytudou
2022-12-30 17:39:39 +08:00
提供个思路,把字符串先分解为对象再来排是不是容易些
eg:
string fullname
string firstname
string secondname
string extname
kop1989smurf
2022-12-30 17:43:38 +08:00
如果真的是一定以.分割,而且能确保意义对其的话,直接按照.分割之后逐级排序不行么?
中文的话,可以转拼音之后排序+检索。(防止“王亡王”这种情况发生)
dabaitu
2022-12-30 18:04:36 +08:00
统一谢谢楼上大佬们 大概有点思路了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/905640

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX