function resolveHtmlImage (tokens, idx) { let content = tokens[idx].content || '' content = content.replace(/]*?)src\s*=\s*(["'])([^\2>]+?)\2([^>]*)>/gm, (m, g1, g2, g3, g4) => { if (/^(http|\/\/|data:)/.test(g3)) { return m } return `` }) return content } function resolveImage (tokens, idx) { const src = tokens[idx].attrs[0][1] const alt = tokens[idx].content const resAttrs = tokens[idx].attrs.slice(2).reduce((pre, cur) => `${pre} ${cur[0]}=${cur[1]}`, '') if (/^(http|\/\/|data:)/.test(src)) { return `${alt}` } return `${alt}` } export default function localImage (md) { md.renderer.rules.image = resolveImage md.renderer.rules.html_block = resolveHtmlImage md.renderer.rules.html_inline = resolveHtmlImage }