js 正则 src

src="Js/jquery.curvycorners.min.js"
src="
http://123.com/Js/jquery.curvycorners.min.js
"
我想把相对路径的替换成绝对路径
有www或http的不做替换
replace(/(src=\")([^hw])/gim, PageUrl);正则还有点不对,把目录名都截取了一半,请高手帮忙修改一下
<SCRIPT language="javascript" type="text/javascript" src="
http://localhost:1352/s/jquery.js
"></SCRIPT>
<SCRIPT language="javascript" type="text/javascript" src="
http://localhost:1352/jax/Common.js
"></SCRIPT>
以上是替换后绝对路径的,以下是原始相对路径的
<script language="javascript" type="text/javascript" src="Js/jquery.js"></script>
<script language="javascript" type="text/javascript" src="Ajax/Common.js"></script>
最新回答
风微甜

2026-10-25 20:09:40

如下的代码是可以的,为了更好让正则匹配到你的src,所以必须要增加src这个关键字的。
假设str为需要替换的字符串:
str = str.replace(/src="([^"]+)"/gi, 'src="
http://123.com/$1
"');

测试代码:
var str = 'src="Js/jquery.curvycorners.min.js"';
str = str.replace(/src="([^"]+)"/gi, 'src="
http://123.com/$1
"');
alert(str);
偶遇制造者

2026-04-09 21:25:56

把可能有的url地址发几个上来当例子

<textarea id="txt" cols=40 rows=10>
</textarea>
<input type="button" value="提取" onclick="flt()">
<script>
function flt()
{
var str=document.getElementById("txt").value;
var re=/(http(s)?\:\/\/)?(www\.)?(\w+\:\d+)?(\/\w+)+\.(swf|gif|jpg|bmp|jpeg)/gi;
var arr=str.match(re);
document.getElementById("txt").value="";
for(var i=0;i<arr.length;i++)
{
document.getElementById("txt").value+=arr[i]+"\n";
}
}
</script>
清旖

2026-02-03 02:14:03

aw
收起 1条折叠回答