js正则匹配markdown里的图片标签的实现

其实前端后端需要将markdown文本转换为html文本都有相应的库,几句代码就ok,但有时我们又必须获取到markdown里的某个标签来进行相应的转换,有几种办法,可以从已经转换好的html文本里获取,还有的就是直接从markdown文本里获取,这里说的是第二种。

Posted in Javascript onMarch 24, 2021

1. 一个markdown里只有一个图片的情况

const str = "asddsad![标题](url)asdasddasd"; //一段markdown文本,包含一个图片"![标题](url)"
let result = str.match(/!\[(.*?)\]\((.*?)\)/); //直接查找
console.log(result); 

运行结果

js正则匹配markdown里的图片标签的实现

2. 一个markdown里有多个图片的情况

const str = "asghfj![标题1](url1)gfhasfr![标题2](url2)sadas";
const pattern = /!\[(.*?)\]\((.*?)\)/mg;
let matcher;
 
while ((matcher = pattern.exec(str)) !== null) {
  console.log(matcher);
}

运行结果

js正则匹配markdown里的图片标签的实现

每个结果都有相应的原文以及原文所在位置,如果要做替换直接就可以替换了,参照如下方法

//最简单的替换
"123".replace('1','a'); //把1替换为a

 

Javascript 相关文章推荐
Javascript开发之三数组对象实例介绍
Nov 12 Javascript
jQuery焦点图切换特效插件封装实例
Aug 18 Javascript
jQuery 动态云标签插件
Nov 11 Javascript
分享20个提升网站界面体验的jQuery插件
Dec 15 Javascript
JavaScript比较两个对象是否相等的方法
Feb 06 Javascript
javascript显式类型转换实例分析
Apr 25 Javascript
JS中改变this指向的方法(call和apply、bind)
Mar 26 Javascript
深入理解Commonjs规范及Node模块实现
May 17 Javascript
ES6学习之变量的两种命名方法示例
Jul 18 Javascript
十分钟带你快速了解React16新特性
Nov 10 Javascript
AngularJS下$http服务Post方法传递json参数的实例
Mar 29 Javascript
在vue中使用Echarts利用watch做动态数据渲染操作
Jul 20 Javascript
浅谈react路由传参的几种方式
Mar 23 #Javascript
一百多行代码实现react拖拽hooks
node中使用shell脚本的方法步骤
详解如何解决使用JSON.stringify时遇到的循环引用问题
vue 中 get / delete 传递数组参数方法
Mar 23 #Vue.js
JavaScript实现页面动态验证码的实现示例
使用Vue.js和MJML创建响应式电子邮件
You might like
解决php使用异步调用获取数据时出现(错误c00ce56e导致此项操作无法完成)
2013/07/03 PHP
PHP验证码函数代码(简单实用)
2013/09/29 PHP
WordPress中邮件的一些修改和自定义技巧
2015/12/15 PHP
Javascript写了一个清除“logo1_.exe”的杀毒工具(可扫描目录)
2007/02/09 Javascript
自己开发Dojo的建议框架
2008/09/24 Javascript
JS去除字符串的空格增强版(可以去除中间的空格)
2009/08/26 Javascript
js关闭子窗体刷新父窗体实现方法
2012/12/04 Javascript
jQuery中outerWidth()方法用法实例
2015/01/19 Javascript
浅析node连接数据库(express+mysql)
2015/11/30 Javascript
WordPress中利用AJAX异步获取评论用户头像的方法
2016/01/08 Javascript
Web前端开发工具——bower依赖包管理工具
2016/03/29 Javascript
纯JS前端实现分页代码
2016/06/21 Javascript
用JS写的一个Ajax库(实例代码)
2016/08/06 Javascript
微信小程序 小程序制作及动画(animation样式)详解
2017/01/06 Javascript
JSON 数据格式详解
2017/09/13 Javascript
基于Vue中点击组件外关闭组件的实现方法
2018/03/06 Javascript
JS获取指定月份的天数两种实现方法
2018/06/22 Javascript
微信小程序获取音频时长与实时获取播放进度问题
2018/08/28 Javascript
JavaScript的变量声明与声明提前用法实例分析
2019/11/26 Javascript
[01:11:10]2014 DOTA2华西杯精英邀请赛 5 24 iG VS VG加赛
2014/05/26 DOTA
在Django的模板中使用认证数据的方法
2015/07/23 Python
Python中的getopt函数使用详解
2015/07/28 Python
使用python实现tcp自动重连
2017/07/02 Python
如何在python字符串中输入纯粹的{}
2018/08/22 Python
Python对excel文档的操作方法详解
2018/12/10 Python
Python3压缩和解压缩实现代码
2021/03/01 Python
String是最基本的数据类型吗?
2013/06/13 面试题
运动会通讯稿150字
2014/02/15 职场文书
党员干部公开承诺书
2014/03/26 职场文书
2014年十一国庆向国旗敬礼寄语
2014/04/11 职场文书
毕业实习自我鉴定范文2014
2014/09/26 职场文书
民警群众路线教育实践活动对照检查材料
2014/10/04 职场文书
全国法制宣传日活动总结
2015/05/05 职场文书
2015年店长个人工作总结
2015/10/23 职场文书
《开国大典》教学反思
2016/02/16 职场文书
Matplotlib绘制混淆矩阵的实现
2021/05/27 Python