替换正则表达式中的 img 元素 src 属性

2024-01-09

解决了这个问题,以防有人需要它在这里

var feed      =   feeds.entries[i].content;
var parsedFeed    =   feed.replace(/src=/gi, "tempsrc=");
var tmpHolder =   document.createElement('div');
tmpHolder.innerHTML=parsedFeed;

我有一个包含 html 标记的字符串,其中包括<img src='path.jpg'/>

我想对字符串运行正则表达式以将每个 src attr 替换为 tmpSrc

so

 <img src='path.jpg'/>

会变成

 <img tmpSrc='path.jpg'/>

顺便说一句,这是在 javascript 中

这是在其他地方发布但尚未解决的根本问题

浏览器为 jQuery 解析 HTML,无需加载资源 https://stackoverflow.com/questions/5861249/browser-parse-html-for-jquery-without-loading-resources

如何在不加载资源的情况下解析AJAX响应? https://stackoverflow.com/questions/3471898/how-to-parse-ajax-response-without-loading-resources

Thanks


如果这是您控制的字符串,而不是从网页检索的 HTML,那么您确实可以安全地使用正则表达式。更改所有出现的<img src= to <img tmpSrc=,您可以使用此操作:

var str = "<img src='path.jpg'/>";   // whatever your source string is
str = str.replace(/<img src=/gi, "<img tempSrc=");

其他发帖者所说的是,正则表达式不适用于从网页检索的 HTML,因为不同的浏览器返回不同形式的 HTML,因此很难可靠地匹配它。但是,如果您尝试替换的字符串在您自己的控制之下并且您可以知道它的格式,那么这个正则表达式应该可以正常工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

替换正则表达式中的 img 元素 src 属性 的相关文章

随机推荐