资讯专栏INFORMATION COLUMN

正则表达式之简易markdown文件解析器

darryrzhong / 476人阅读

摘要:使用正则表达式也可以写一个简单的解析器一般的表达式是这样这是一个表达式这是一个表达式一行一个表达式,所以可以使用将内容分割为一个数组,数组的都每一项都是一个表达式然后再对每一行表达式进行解析,假如匹配到了如下表达式这是一个表达式这是一个表达

使用正则表达式也可以写一个简单的markdown解析器
一般的markdown表达式是这样

# 这是一个markdown表达式
## 这是一个markdown表达式

一行一个markdown表达式,所以可以使用split("n")将markdown内容分割为一个数组,数组的都每一项都是一个markdown表达式
然后再对每一行表达式进行解析,假如匹配到了如下表达式

# 这是一个markdown表达式
## 这是一个markdown表达式

可以这样处理

arry = row.match(/^#s/)

if (arry[0] == "#") {
    "

" + rows.substring(2) + "

"; }

将得到以下HTML语句

这是一个markdown表达式

这是一个markdown表达式

再把得到的HTML语句渲染到DOM中 就完成了一次markdown文本解析了
对于其他的markdown也是遵循这个规则来处理

先来看一个简单的DEMO
这是项目代码

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/100431.html

相关文章

  • javascript功能插件大集合 前端常用插件 js常用插件

    摘要:转载来源包管理器管理着库,并提供读取和打包它们的工具。能构建更好应用的客户端包管理器。一个整合和的最佳思想,使开发者能快速方便地组织和编写前端代码的下一代包管理器。很棒的组件集合。隐秘地使用和用户数据。 转载来源:https://github.com/jobbole/aw... 包管理器管理着 javascript 库,并提供读取和打包它们的工具。•npm – npm 是 javasc...

    netmou 评论0 收藏0
  • javascript功能插件大集合 前端常用插件 js常用插件

    摘要:转载来源包管理器管理着库,并提供读取和打包它们的工具。能构建更好应用的客户端包管理器。一个整合和的最佳思想,使开发者能快速方便地组织和编写前端代码的下一代包管理器。很棒的组件集合。隐秘地使用和用户数据。 转载来源:https://github.com/jobbole/aw... 包管理器管理着 javascript 库,并提供读取和打包它们的工具。•npm – npm 是 javasc...

    Hydrogen 评论0 收藏0
  • javascript功能插件大集合,写前端的亲们记得收藏

    摘要:一个专注于浏览器端和兼容的包管理器。一个整合和的最佳思想,使开发者能快速方便地组织和编写前端代码的下一代包管理器。完全插件化的工具,能在中识别和记录模式。健壮的优雅且功能丰富的模板引擎。完整的经过充分测试和记录数据结构的库。 【导读】:GitHub 上有一个 Awesome – XXX 系列的资源整理。awesome-javascript 是 sorrycc 发起维护的 JS 资源列表...

    cfanr 评论0 收藏0
  • JavaScript 资源大全中文版

    摘要:官网全新的静态包管理器。官网一个整合和官网的最佳思想,使开发者能快速方便地组织和编写前端代码的下一代包管理器。官网小巧的兼容的所见即所得的富文本编辑器。官网富文本编辑器。官网由制作,适用于每天写作的富文本编辑器。 1. 包管理器 管理着 javascript 库,并提供读取和打包它们的工具。 npm:npm 是 javascript 的包管理器。官网 cnpm:cnpm 是 由于国...

    jzman 评论0 收藏0
  • 正则表达解析 Markdown 语法

    摘要:链接在语法中链接的表示形式为链接。。代表出现次或者无限次非贪婪模式让正则表达式尽可能少的匹配,也就是说一旦匹配成功匹配不再继续尝试,就是非贪婪模式。斜体表示以一个或者开头并结尾表示规则和第一个集合相同,中间包含个或多个字符的字符串。 转载请注明出处 原文连接 http://blog.huanghanlian.com/article/5c80b4176f8b011040530140 文章...

    chaosx110 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<