我想存一个html存到数据库,所以我需要替换里面的空格和回车如果是标签外面的,我直接把换行符换成</br>但是标签里面的,我需要把换行替换成空格 
例如
<input id="a"
 name="a" />
替换成
<input id="a"  name="a" />

解决方案 »

  1.   

    首先要从新考虑一下是否一定要这样做,有没有替代方法,换一种思维,如果你硬要这样做,那么喝你的这个html 是静态的的嘛,你不能先格式化一样再存吗.
      

  2.   

    你提的这个问题是文本格式化的问题,由于文本中的结构是未知的,虽然正则可以解决这样的问题,但其实工作量还是很大的。
    不知道你要如此做的目的是什么,对于存偖而言,你并不能节省多少存储空间,对于显示而言,在标签外面的回车是有影响的,但这样做也是有风险的,因为标签可能是CSS、JS或其它的标签。如果简单替换,你的文件可能会出现错误。
      

  3.   

    <script type="text/javascript"> 
    function MyReplace(sometext)
    {
        var re=/(<[^<>\r\n]*)\r\n/g;
        return sometext.replace(re, "$1");
    }document.write(MyReplace("<input name=\"a\"  \r\n  id =\"b\" />"));
    document.write("<input name=\"a\"  \r\n  id =\"b\" />");
    </script>
      

  4.   

    下面这个算标签内还是外回车?
    <a>
    </a>
      

  5.   

    <script type="text/javascript"> 
    var str =" <input name=yyy\r\nid=iii \> ffffffff <input name=b \r\n id = dd></input>";
    var re=/(<[^<>\r\n]*?)\r\n/ig;
    alert(str.replace(re, "$1"));
    </script>