用Python代码实现简单的Markdown转换器

今天心血来潮,写了一个 Markdown 转换器。

程序开头先处理一些行内的语法,比如 code、strong、i 等,用正则直接替换:

接着是复杂一点的图片和链接:

接着就处理其他的语法,先把文本按每一行分开:

处理列表和待办事项的问题:

因为有序列表和无序列表的区别是头尾的ol和ul,所以要用 list_flag 变量来判断

处理完后处理其他的语法:

这里我稍微修改了一点,让 > 和 》 都可以转换成引用,主要是切换中英文标点太难了。

然后就是添加 CSS,自己改了一点马克飞象的进去,因为他的引用做得很漂亮:

用 Chrome 打开网页:

webbrowser.get('C:/Program Files (x86)/CentBrowser/Application/chrome.exe %s').open(

'file:///'+os.getcwd()+'/markdown.html')

话说这里也是个坑,系统自带的 Edge 一直打开失败,用那个注册器注册 Chrome 也没办法用 ,最后还是在外网找到了解决方案。

最后的效果:

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181211A1D0FH00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券