在我的node.js服务器上,我有一个字符串,其中包含html(未转义)和一些(不仅仅是一个,但更多)带有base64 src的img标记,我需要从中获取数组中的所有base64字符串然后将这些base64解码为图像,将它们保存在服务器上的某处并用img地址替换base64字符串,例如我需要更改此
<img src="data:image/png;base64,iVBORw...some-pretty-damn-long-string...K5CYII=" style="foo:bar;" possible-other-attribude="baz"/>
到此:
<img src="/media/images/filename.png" style="foo:bar;" possible-other-attribude="baz"/>
我对实际解码没有问题,保存为.png而不是替换字符串,但我不知道如何使用所有base64字符串获取数组。谢谢你的帮助。
答案 0 :(得分:0)
var strings = htmlCode.match(/src="data:[a-z\/]+;base64,.+?"/g)
for(var i = 0; i < strings.length; i++)
{
doSomething(strings[i].match(/,(.+?)"/)[1]);
}