美文网首页
如何把markdown的文章大纲解析为json格式

如何把markdown的文章大纲解析为json格式

作者: 沫粢泪虞 | 来源:发表于2023-10-30 14:23 被阅读0次
     def parse_markdown(self, markdown_text, title):
            self.logger.info(markdown_text)
            print(markdown_text)
            result = {"result": []}
            children = result["result"]
            current_level = 0
            lines = markdown_text.split('\n')
    
            for line in lines:
                # 使用正则表达式匹配 Markdown 标题
    
                match = re.match(r'^(#{2,})\s+(.*)$', line.strip())
                if match:
                    level = len(match.group(1))
                    _title = match.group(2)
                    if _title in title:
                        continue
                    # 调整层级
                    if current_level >= level:
                        children = result["result"]
                        for _ in range(level-2):
                            children = children[-1]["children"]
                    # 添加新标题
                    new_title = {"title": _title, "children": []}
                    children.append(new_title)
                    children = new_title["children"]
                    current_level = level
            result = {"title": title, "children": result["result"]}
            return json.dumps(result,  ensure_ascii=False)
    
    if __name__ == '__main__':
        res = llm_base_qa_outline_service.parse_markdown('''
    # 月船三号任务分析
         ## 任务背景
         ## 任务目标
         ## 任务执行情况
         ### 任务准备工作
         ### 任务执行过程
         ### 任务结果分析
         ## 任务意义与影响
         ## 启示建议
         ### 加强月球探测技术研究与应用
         ### 推动国际合作,共同探索月球资源
         ### 提高月球探测任务的可持续性
         ## 参考文献''',
     "月船三号任务结果分析")
        print(res)
    

    相关文章

      网友评论

          本文标题:如何把markdown的文章大纲解析为json格式

          本文链接:https://www.haomeiwen.com/subject/gqmbidtx.html