使用正则表达式也可以写一个简单的markdown解析器
一般的markdown表达式是这样
# 这是一个markdown表达式 ## 这是一个markdown表达式
一行一个markdown表达式,所以可以使用split('n')将markdown内容分割为一个数组,数组的都每一项都是一个markdown表达式
然后再对每一行表达式进行解析,假如匹配到了如下表达式
# 这是一个markdown表达式 ## 这是一个markdown表达式
可以这样处理
arry = row.match(/^#\s/) if (arry[0] == '#') { '<h1>' + rows.substring(2) + '</h1>'; }
将得到以下HTML语句
<h1>这是一个markdown表达式</h1> <h2>这是一个markdown表达式</h2>
再把得到的HTML语句渲染到DOM中 就完成了一次markdown文本解析了
对于其他的markdown也是遵循这个规则来处理
先来看一个简单的DEMO
这是项目代码