如何对含DD/MM格式欧洲日期的文本内容按日期排序
DD/MM 格式日期行升序排序实现方案
你可以根据自己的使用场景选择以下任意一种方法:
1. Linux/macOS 命令行快速处理
直接用系统自带的sort命令即可完成,不需要额外安装工具:
sort -t '/' -k2,2n -k1,1n input.txt
参数逻辑:
-t '/'指定以斜杠作为字段拆分符-k2,2n优先对第二个字段(月份)做数值升序排序-k1,1n月份相同时,对第一个字段(日期)做数值升序排序
执行后会直接输出符合要求的排序结果。
2. Python 脚本实现(全平台通用)
如果是Windows环境或者需要集成到代码逻辑中,可以用以下短脚本处理:
# 读取待排序内容,也可以从文件读取 raw_lines = [ "14/12 Text 1", "23/12 Text 2", "08/11 Text 3", "08/10 Text 4" ] # 按(月份, 日期)为排序键升序排列 sorted_lines = sorted(raw_lines, key=lambda s: (int(s.split("/")[1]), int(s.split("/")[0]))) # 输出结果 for line in sorted_lines: print(line)
运行后输出结果和你预期的完全一致。
3. 表格工具(Excel/WPS)可视化操作
如果不习惯用命令行或代码,可以用普通表格工具处理:
- 第一步:将所有文本粘贴到表格的A列
- 第二步:选中A列,点击「数据」-「分列」,选择分隔符为斜杠,将日、月和后续文本拆分到不同列
- 第三步:自定义排序,优先按月份所在列升序,次优先按日期所在列升序
- 第四步:排序完成后将多列内容拼接回一列即可。
内容的提问来源于stack exchange,提问作者Alistair McEvoy
相关产品推荐
相关产品推荐

