gpt4 book ai didi

javascript - 使用正则表达式匹配相对图像 URL,然后使用字符串替换使用 Javascript 将其设为绝对 URL

转载 作者:行者123 更新时间:2023-12-02 16:28:54 26 4
gpt4 key购买 nike

我想使用 javascript 正则表达式来查找所有相对 URL,然后使用 javascript 中的字符串替换函数将它们设为绝对 URL。我尝试遵循,但没有成功:(注意:我尝试搜索此网站但找不到完美的解决方案)

data = data.replace(/\/\.(jpg|png|gif|bmp)$\/i/gi,
"http://example.com" + "$1");

我想要实现的是将相对图像 URL 替换为使用 YQL 和 JSON 提取的外部数据中的绝对形式。我还找到了另一个可以完成这项工作的脚本,但它仅适用于页面上的 HTML 元素,而不适用于包含外部加载内容的 div 内的内容。

除了 data.replace 之外的任何方法在我的情况下似乎都不起作用,我尝试了另一个完美运行的脚本,但仅适用于页面上的 html,而不是外部加载的 HTML。

这是我在这里发表的第一篇文章。任何帮助,将不胜感激。

最佳答案

var html = '<html><img src="test.jpg"/><img src="/begin-with-slash.jpg"/><img src="http://absolutelink.com/test.jpg"/></html>';
html.replace(/(src=")(?!https?:\/\/)\/?/ig, '$1http://example.com/');

html.replace(/(src=")(?!https?:\/\/)\/?([^"]+\.(jpe?g|png|gif|bmp))"/ig, '$1http://example.com/$2"');

仅适用于匹配图像

应该可以解决你的问题

此正则表达式匹配 src=" 后面不跟协议(protocol) http 或 https,可选斜杠是为了防止双斜杠,例如 http://example.com//begin-with-slash .jpg

输出

<html><img src="http://example.com/test.jpg"/><img src="http://example.com/begin-with-slash.jpg"/><img src="http://absolutelink.com/test.jpg"/></html>

关于javascript - 使用正则表达式匹配相对图像 URL,然后使用字符串替换使用 Javascript 将其设为绝对 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28482087/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com