其實前端后端需要將markdown文本轉(zhuǎn)換為html文本都有相應(yīng)的庫,幾句代碼就ok,但有時我們又必須獲取到markdown里的某個標簽來進行相應(yīng)的轉(zhuǎn)換,有幾種辦法,可以從已經(jīng)轉(zhuǎn)換好的html文本里獲取,還有的就是直接從markdown文本里獲取,這里說的是第二種。
1. 一個markdown里只有一個圖片的情況
const str = "asddsad![標題](url)asdasddasd"; //一段markdown文本,包含一個圖片"![標題](url)"
let result = str.match(/!\[(.*?)\]\((.*?)\)/); //直接查找
console.log(result);
運行結(jié)果
![](http://img.jbzj.com/file_images/article/202012/20201218105023767.png?20201118105037)
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);
}
運行結(jié)果
![](http://img.jbzj.com/file_images/article/202012/20201218105045663.png?20201118105059)
每個結(jié)果都有相應(yīng)的原文以及原文所在位置,如果要做替換直接就可以替換了,參照如下方法
//最簡單的替換
"123".replace('1','a'); //把1替換為a
到此這篇關(guān)于js正則匹配markdown里的圖片標簽的實現(xiàn)的文章就介紹到這了,更多相關(guān)js正則匹配markdown圖片標簽內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- 正則表達式處理圖片地址、img標簽的方法
- 用正則表達式替換圖片地址img標簽
- asp.net 過濾圖片標簽的正則