md.go 722 B

1234567891011121314151617181920212223242526272829
  1. package ul
  2. import (
  3. "github.com/jaytaylor/html2text"
  4. "regexp"
  5. )
  6. var md_reg1 = regexp.MustCompile("([ *]+)")
  7. var md_reg2 = regexp.MustCompile("([\\n]+)")
  8. var md_reg3 = regexp.MustCompile("([-]{3,})")
  9. func HttpConvertToMarkdown(html string) string {
  10. if text := PostMarkDownText(html); text != "" {
  11. return text
  12. }
  13. return html
  14. }
  15. // 有缺陷---内存增大···不知原因
  16. func ConvertToMarkdown(html string) string {
  17. markdown, err := html2text.FromString(html, html2text.Options{PrettyTables: true})
  18. if err != nil {
  19. return html
  20. }
  21. markdown = md_reg1.ReplaceAllString(markdown, " ")
  22. markdown = md_reg2.ReplaceAllString(markdown, "\n")
  23. markdown = md_reg3.ReplaceAllString(markdown, "---")
  24. return markdown
  25. }