var str = "<span class=\"style25\">好车,新车,二手车,不错的车子</span>";
var keyWord = "二手车";
str = str.replace(new RegExp("("+keyWord+")","gi"),"<a href=http://cdb.chinacars.com target=\"_blank\">$1</span>");
alert(str)

解决方案 »

  1.   

    还有一个问题就是span标记的内容是不固定的
      

  2.   

    var string = "<span style=\"LEFT: 1px; COLOR: #444; POSITION: absolute; TOP: 1px\">Sha二手车dow</span><span class=\"style25\">好车,新车,二手车,不错的车子</span>";
        var reg = /<span[^>]*>[^<]+<\/span>/ig;
        var key = "二手车";
        string = string.replace(reg, function() {
                                  return arguments[0].replace(new RegExp(key, "i"), "<a href=\"http://cdb.chinacars.com/\" target=\"_blank\">" + key + "</a>")
                                });
      

  3.   

    DOM:<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script type="text/javascript">
    //<![CDATA[
    onload=function(){
    test('span', '二手车');
    }
    function test(tag, flag){
    var o=document.getElementsByTagName(tag)
    for(var i=0; i<o.length; i++){
    if(o[i].firstChild.data.indexOf(flag)>-1){
    o[i].innerHTML='<a href=http://cdb.chinacars.com target="_blank">'+flag+'</span>'
    }
    }
    }
    //]]>
    </script>
    <span class="style25">好车,新车,二手车,不错的车子</span>
    <span class="style25">新车,二手车,不错的车子</span>
    <span class="style25">二手车,不错的车子</span>
    <span class="style25">不错的车子</span>