http://zhidao.baidu.com/question/204036875.html
src="Js/jquery.curvycorners.min.js" 
src="http://123.com/Js/jquery.curvycorners.min.js"
我想把相对路径的替换成绝对路径
有www或http的不做替换 
我的意思不是全部替换而是在相对路径前面追加域名,把相对路径变成绝对路径,因为地址都是不一样的
例如:页面上有引用的js,css,图片,因为这些东西全是相对路径,所以当我把这个页面(静态页面)发送给客户或客户下载到本地的时候,客户在本地打开的时候,会丢失样式,js报错,图片无法显示,这些问题需要把相对路径改成绝对路径,可能有人会说直接用绝对路径就好了,因为是多域名绑定一个IP的,而且还有其他的因素,到底这个绝对路径必须是客户在打开当前页面的时候,根据当前页面的域名来的,所以我想实现把src="或href="换成src="http://baidu.com/后面+相对路径,这样的话就不会造成css,js,图片无法显示或加载的问题了
应该已经描述的很详细了吧,请大家帮我写一个匹配src="或href="并且后面不是http或www开始的正则
谢谢大家

解决方案 »

  1.   

    try...var reg = /(href|src)="(?!http:\/\/|www)[^"]*"/i;
      

  2.   

    (href|src)="((?!http|www)[^"]+)"替换成$1="http://baidu.com/$2"
      

  3.   

    replace(/(href|src)="((?!http|www)[^"]+)"/ig,"$1=\"http://baidu.com/$2\"");
      

  4.   

    replace(/(href|src)="?(?!"|http|www)/gi, "$&http://baidu.com/")
      

  5.   

    根据LZ例举的第一个地址结构,至少还应该考虑js/question/204036875.html这种不带引号的情况。
      

  6.   


    var PageUrl = "src=\"" + window.location.protocol + "//" + window.location.host + '/';
        var PageHtml = $("html").html().replace(/(href|src)="(?!http:\/\/|www)[^"]*"/i, PageUrl);正则好像不行,请大家帮忙
      

  7.   

    var PageUrl = "src=\"" + window.location.protocol + "//" + window.location.host + '/';
        var PageHtml = $("html").html().replace(/(href|src)="((?!http|www)[^"]+)"/ig,"$1=\""+PageUrl+"$2\"");