<script>
var reg=/style=\".*楷体.*\"/;
var str='style="FONT-SIZE: 12pt; LINE-HEIGHT: 200%; FONT-FAMILY: 楷体_GB2312; mso-hansi-font-family: 宋体" >(编者注:身三:杀、盗、淫;口四:妄言、恶口、两舌、绮语) ';
var newStr=str.replace(reg,"class='kt'");
alert(newStr);
</script>

解决方案 »

  1.   

    <script type="text/javascript"  > 
    var a='<div  style="FONT-SIZE: 12pt; LINE-HEIGHT: 200%">aaaaaaa</div><span  style="FONT-SIZE: 12pt; LINE-HEIGHT: 100%">bbbbbbb</span>'
    alert(a.replace(/(style=\"FONT-SIZE[^\"]*?\")/gi,'class="kt"'))
    </script>要求不详细 
      

  2.   

    这样写安全一点<script>
    var reg=/style\s*=\s*\"[^<>]+楷体_GB2312[^<>]*\"/;
    var str='style="FONT-SIZE: 12pt; LINE-HEIGHT: 200%; FONT-FAMILY: 楷体_GB2312; mso-hansi-font-family: 宋体" >(编者注:身三:杀、盗、淫;口四:妄言、恶口、两舌、绮语) ';
    var newStr=str.replace(reg,"class='kt'");
    alert(newStr);
    </script>
      

  3.   

    谢谢he_8134。但为了容易说明问题,主贴的描述其实是我简化了的,实际上,要比这复杂的多,我只再提一个,要求将主贴得出的结果进一步处理,例如下列语句:
    --------------------------------------
    </span><span>。如果说在家比出家证得更好,那佛就不会再成立僧团了,是不是?这是不可能的事情。我们用笨理去想也知道,专业和不专业是不一样的。</span><span></span></p>
    就晚了,还是有把握的一些比较好。</span><span  class='kt' >(编录一部分疑伪经。)</span><span></span></p>
    ----------------------------------------
    要求将上面带"class='kt'"的span保留,其他无用span都删掉,谢谢。
      

  4.   

    这个很难啊~~~关键是<span></span>本身要配对,而且html本身没错~~
    <script>
    var reg=/<span\s*>([^<]*)<\/span\s*>/ig;
    var str="<span >如果说在家比出家证得更好,那佛就不会再成立僧团了,是不是?这是不可能的事情。我们用笨理去想也知道,专业和不专业是不一样的。 </span > <span > </span> </p > 就晚了,还是有把握的一些比较好。 </span > <span  class= 'kt '  >(编录一部分疑伪经。) </span > <span > </span > </p >";
    var newStr=str.replace(reg,"$1");
    alert(newStr);
    </script>
      

  5.   

    哈.这个我昨天想了一下,可以通过3个步骤完成~~
    <script > var str=" <span  >如果说在家比出家证得更好,那佛就不会再成立僧团了,是不是?这是不可能的事情。我们用笨理去想也知道,专业和不专业是不一样的。  </span  >  <span  >  </span >  </p  > 就晚了,还是有把握的一些比较好。  </span  >  <span  class=  'kt  '   >(编录一部分疑伪经。)  </span  >  <span  >  </span  >  </p  >"; /* 第一步,把和<span class="kt">配对的</span>替换成<12345> */
    var p1=/(<span\s+class[^>]+>[^>]+)(<\/span\s*>)/ig;
    str=str.replace(p1,"$1<12345>"); /* 第二步,把所有无用的<span>和</span>去掉 */
    var p2=/<span\s*>|<\/span\s*>/ig;
    str=str.replace(p2,"");/* 第三步,把<12345>恢复成</span> */
    str=str.replace("<12345>","</span>");alert(str); </script >
      

  6.   

    晕,判断一个数等于0有必要用到正则吗?我再修改了一下上面那个代码~~其实分多步走不代表性能降低~~var str=" <span  >如果说在家比出家证得更好,那佛就不会再成立僧团了,是不是?这是不可能的事情。我们用笨理去想也知道,专业和不专业是不一样的。  </span  >  <span  >  </span >  </p  > 就晚了,还是有把握的一些比较好。  </span  >  <span  class=  'kt  '   >(编录一部分疑伪经。)  </span  >  <span  >  </span  >  </p  >"; /* 第一步,把和<span class="kt">配对的</span>替换成<12345> */
    /* 这里改了一下 */
    var p1=/(<span\s+class[^>]+>.+?)<\/span\s*>/ig;
    str=str.replace(p1,"$1<12345>"); /* 第二步,把所有无用的<span>和</span>去掉 */
    var p2=/<span\s*>|<\/span\s*>/ig;
    str=str.replace(p2,"");/* 第三步,把<12345>恢复成</span> */
    str=str.replace("<12345>","</span>");alert(str);