我目前正在执行以下操作来解码 Javascript 中的 base64 图像:
var strImage = "";
strImage = strToReplace.replace("data:image/jpeg;base64,", "");
strImage = strToReplace.replace("data:image/png;base64,", "");
strImage = strToReplace.replace("data:image/gif;base64,", "");
strImage = strToReplace.replace("data:image/bmp;base64,", "");
正如您在上面看到的,我们接受四种最标准的图像类型(jpeg、png、gif、bmp);
然而,其中一些图像非常大,用替换扫描每张图像 4-5 次似乎是一种可怕的浪费,而且效率极低。
有没有一种方法可以可靠地一次性去除 base64 图像字符串的数据:图像部分?
也许通过检测字符串中的第一个逗号?
提前致谢。
原文由 Sergio Domínguez 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以使用正则表达式:
^
表示 在字符串的开头data:image
表示 数据:图像\/
表示 /[a-z]+
表示 a和z之间的一个或多个字符;base64,
表示 ;base64,