Javascript 需要找到字符串的匹配项并替换为另一个字符串

Javascript 需要找到字符串的匹配项并替换为另一个字符串,javascript,regex,Javascript,Regex,我需要解析html字符串并用它的base64数据替换图像源 例如: 输入html: <p>This is some text</p> <p><img src="sys_attachment.do?sys_id=e57ff4badb984300e330b04ffe9619ce" alt="" width="auto" height="auto" /> &nbsp;</p> 我试过了,但效果不理想 var htmlString =

我需要解析html字符串并用它的base64数据替换图像源

例如:

输入html:

<p>This is some text</p>
<p><img src="sys_attachment.do?sys_id=e57ff4badb984300e330b04ffe9619ce" alt="" width="auto" height="auto" /> &nbsp;</p>
我试过了,但效果不理想

var htmlString = '<img src="sys_attachment.do?sys_id=e57ff4badb984300e330b04ffe9619ce"/>';

var res = htmlString.match(/^<img src="sys_attachment.do?sys_id=.*"$/g);
var htmlString='';
var res=htmlString.match(/^

你知道如何解决这个问题吗?

使用
htmlString.match(/=.*/)[0]获取
src
。替换(“=”,”;

使用将其更改为Base64

var htmlString='';
var sys_id=htmlString.match(/=.*/)[0]。替换(“=”,”);
系统id=btoa(系统id);
htmlString=htmlString.replace(/src=\“[^”]*”/,'src=“data:image/png;base64,+sys\u id+”);

console.log(htmlString);
我不能使用document.getElementsByTagName,因为我使用的是服务器端javascript,我只需要在不操纵DOM的情况下处理字符串,所以@Oleg很容易。现在检查答案可以使
/=.*/
正则表达式更具体,这样它就只匹配
src
属性,而不是任何属性可能位于
img
上的属性,例如
标题
var htmlString = '<img src="sys_attachment.do?sys_id=e57ff4badb984300e330b04ffe9619ce"/>';

var res = htmlString.match(/^<img src="sys_attachment.do?sys_id=.*"$/g);