Go --- 将Markdown格式转化为普通的文档格式

简介: Go --- 将Markdown格式转化为普通的文档格式

需要借助一个包

github.com/russross/blackfriday”

然后两个函数

// TrimHtml 去除HTML标签
func TrimHtml(html string) string {
  //将HTML标签全转换成小写
  re, _ := regexp.Compile("\\<[\\S\\s]+?\\>")
  html = re.ReplaceAllStringFunc(html, strings.ToLower)
  //去除STYLE
  re, _ = regexp.Compile("\\<style[\\S\\s]+?\\</style\\>")
  html = re.ReplaceAllString(html, "")
  //去除SCRIPT
  re, _ = regexp.Compile("\\<script[\\S\\s]+?\\</script\\>")
  html = re.ReplaceAllString(html, "")
  //去除所有尖括号内的HTML代码,并换成换行符
  re, _ = regexp.Compile("\\<[\\S\\s]+?\\>")
  html = re.ReplaceAllString(html, "\n")
  //去除连续的换行符
  re, _ = regexp.Compile("\\s{2,}")
  html = re.ReplaceAllString(html, "\n")
  return strings.TrimSpace(html)
}
// Markdown2Html Markdown format to HTML format
func Markdown2Html(markdown string) string {
  html := blackfriday.MarkdownCommon([]byte(markdown))
  return string(html)
}

简单转换

func main() {
  s := "## 爬虫步骤\n\n- 明确目标(确定在那个网站搜索)\n- 爬(爬下内容)\n- 取(筛选想要的)\n- 处理数据(根据自己的想法)\n\n## 正则表达式\n\n- 文档:https://studygolang.com/pkgdoc\n- API\n  - re := regexp.MustCompile(reStr),传入正则表达式,得到正则表达式对象\n  - ret := re.FindAllStringSubmatch(srcStr,-1):用正则对象,获取页面页面,srcStr\n- 爬邮箱\n- 方法抽取\n- 爬连接\n- 爬手机号\n  - http://www.zhaohaowang.com/ 如果连接失效了自己找一个有手机号的就好了\n- 爬身份证\n  - http://henan.qq.com/a/20171107/069413.htm 如果连接失效了自己找一个就好了\n- 爬图片连接\n\n```golang\npackage main\n\nimport (\n    \"fmt\"\n    \"io/ioutil\"\n    \"net/http\"\n    \"regexp\"\n)\n"
  fmt.Println(TrimHtml(Markdown2Html(s)))
}

转换效果:

转换前

转换后


相关文章
|
5月前
|
存储 人工智能 文字识别
Nanonets-OCR-s开源!复杂文档转Markdown SoTA,颠覆复杂文档工作流
Nanonets团队开源了 Nanonets-OCR-s,该模型基于Qwen2.5-VL-3B微调,9G显存就能跑。
720 2
|
7月前
|
API
Postman 可以将文档导出为 HTML/Markdown 吗?
Postman 没有提供直接将你的文档导出为 HTML 或 Markdown 的途径。太糟糕了
|
10月前
|
人工智能 文字识别 自然语言处理
Vision Parse:开源的 PDF 转 Markdown 工具,结合视觉语言模型和 OCR,识别文本和表格并保持原格式
Vision Parse 是一款开源的 PDF 转 Markdown 工具,基于视觉语言模型,能够智能识别和提取 PDF 中的文本和表格,并保持原有格式和结构。
1373 19
Vision Parse:开源的 PDF 转 Markdown 工具,结合视觉语言模型和 OCR,识别文本和表格并保持原格式
|
10月前
|
机器学习/深度学习 人工智能 文字识别
Zerox:AI驱动的万能OCR工具,精准识别复杂布局并输出Markdown格式,支持PDF、DOCX、图片等多种文件格式
Zerox 是一款开源的本地化高精度OCR工具,基于GPT-4o-mini模型,支持PDF、DOCX、图片等多种格式文件,能够零样本识别复杂布局文档,输出Markdown格式结果。
971 4
Zerox:AI驱动的万能OCR工具,精准识别复杂布局并输出Markdown格式,支持PDF、DOCX、图片等多种文件格式
|
11月前
|
人工智能 文字识别 数据挖掘
MarkItDown:微软开源的多格式转Markdown工具,支持将PDF、Word、图像和音频等文件转换为Markdown格式
MarkItDown 是微软开源的多功能文档转换工具,支持将 PDF、PPT、Word、Excel、图像、音频等多种格式的文件转换为 Markdown 格式,具备 OCR 文字识别、语音转文字和元数据提取等功能。
2443 9
MarkItDown:微软开源的多格式转Markdown工具,支持将PDF、Word、图像和音频等文件转换为Markdown格式
|
11月前
|
人工智能 JSON Linux
利用阿里云GPU加速服务器实现pdf转换为markdown格式
随着AI模型的发展,GPU需求日益增长,尤其是个人学习和研究。直接购置硬件成本高且更新快,建议选择阿里云等提供的GPU加速型服务器。
利用阿里云GPU加速服务器实现pdf转换为markdown格式
|
IDE Java 开发工具
在 Vim 里为 Markdown 文档展示导航窗格
在一个很长的 Markdown 文档里要准确跳转到某标题并不容易,如果像 Word 那样有个导航窗格就好了。
182 6
基于typora编写Markdown文档
如何使用Typora编写Markdown文档的教程,包括软件设置、快捷键使用以及一些使用技巧。
309 18
|
JSON 小程序 前端开发
towxml的使用,在微信小程序中快速将markdown格式渲染为wxml文本
本文介绍了在微信小程序中使用`towxml`库将Markdown格式文本渲染为WXML的方法。文章提供了`towxml`的概述、安装步骤、以及如何在小程序中配置和使用`towxml`进行Markdown解析的详细说明和代码示例。
|
存储 自然语言处理 前端开发
Star 6.9k!开源的全能Markdown格式文件提取器:MinerU
总的来说,MinerU是一款非常实用且强大的数据提取工具。无论你是开发者、互联网从业者,还是有具体需求的新人小白,MinerU都能极大地提升你的工作效率,让你专注于更有价值的工作。 最后,如果你对MinerU感兴趣,不妨亲自尝试一下,相信你会爱上这款全能的Markdown格式文件提取器。
下一篇
oss云网关配置