如何将列表元素按Header分组并按Header标题字母顺序排序
操作步骤
- 拆分原始数据:原始字符串中不同Header的分组用多个连续空格分隔,先按多空格拆分得到独立的Header+Item组合单元
- 解析分组内容:每个组合单元按逗号拆分,第一个元素为Header标题,剩余元素为该Header下属的Item
- 排序输出:提取所有Header按字母升序排序,再按顺序输出对应的Header和下属Item即可
代码实现示例(Python)
# 传入原始字符串 raw_content = "Header1, Item1, Item2, Item3, Header2, Item4, Item5, Header3, Item6, Item7" # 拆分得到各个Header分组 header_units = [unit.strip() for unit in raw_content.split(" ") if unit.strip()] # 构建Header与对应Item的映射关系 header_map = {} for unit in header_units: elems = [elem.strip() for elem in unit.split(",") if elem.strip()] header, items = elems[0], elems[1:] header_map[header] = items # 按Header字母升序排序 sorted_headers = sorted(header_map.keys()) # 输出Markdown格式的结果 for h in sorted_headers: print(f"# {h}") for item in header_map[h]: print(f"- {item}") print()
最终排序后的结构化结果
Header1
- Item1
- Item2
- Item3
Header2
- Item4
- Item5
Header3
- Item6
- Item7
如果需要将英文内容替换为中文,直接将Header和Item的内容翻译后,按上述逻辑重新排序输出即可。
内容的提问来源于stack exchange,提问作者Wafi_ck
相关产品推荐
相关产品推荐

