本帖最后由 spode 于 2011-01-02 13:28:19 编辑

解决方案 »

  1.   

    var html = '[h=../a]';//<a href="../a.html">../a</a>
    html = html.replace(/\[h=(.*?)\]/gm,"<a href=\"\$1.html\">\$1</a>");
      

  2.   

    谢谢,不过好像有点点问题,替换之后应该是
    <a href="../a.htm">a</a>
    而不是
    <a href="../a.html">../a</a>
      

  3.   

    replace(/\[h=(\.\.\/){0,}(.*?)\]/,"<a href=\"\$1\$2.html\">\$2</a>");
    此正则不能完全匹配"[h=../../../sss]"希望高手经过指教。
      

  4.   


    var str = "[h=../a],[h=../b],[h=c]";
    alert(str.replace(/\[h=([^\]]*?\/([a-z]+))\]/ig,"<a href=\"$1\">$2</a>"));
      

  5.   

    TRYvar str = "[h=../a],[h=../b],[h=c],[h=dsef]";
    alert(str.replace(/\[h=([^\]]*?\/?([a-z]+))\]/ig,"<a href=\"$1.htm\">$2</a>"));
      

  6.   

    5#的cj205
    最后那个[h=c]好像没被替换哦