Go 语言可用 goldmark 库实现 Markdown 解析与 HTML 渲染:安装后可将字符串或文件转为 HTML,支持表格、链接、高亮等扩展,需按需启用 WithUnsafe() 以保障安全。

用 Go 语言实现 Markdown 解析工具,核心是借助成熟的第三方库(如 goldmark)完成语法解析与 HTML 渲染,而非从零手写解析器。下面以 goldmark 为例,给出简洁、可运行的生成 HTML 文档示例。

安装 goldmark 库

这是目前 Go 生态中最活跃、符合 CommonMark 规范的 Markdown 解析器:

  • 执行命令安装:go get github.com/yuin/goldmark
  • 支持扩展(表格、脚注、目录等),也兼容自定义渲染器

基础解析:将 Markdown 字符串转为 HTML

以下是最小可用示例,把一段 Markdown 文本直接转成 HTML 字符串:

package main

import ( "bytes" "fmt" "github.com/yuin/goldmark" "github.com/yuin/goldmark/renderer/html" )

func main() { md := "# Hello\n\nThis is bold and a link."

var buf bytes.Buffer
if err := goldmark.Convert([]byte(md), &buf, 
    goldmark.WithRenderer(html.NewRenderer(
        html.WithUnsafe(), // 允许原始 HTML(如  雄杰鑫电商资讯网 版权所有  鄂ICP备2024084503号