function ncsdn(a, b, c) {
if (b.indexOf("csdn") > -1) return;
else return a;
}
var pat = /(([a-z]|\d)+)/gi;
var strng = "search 900 csdn 1200 net";
var nstrng = strng.replace(pat, ncsdn);
nstrng = nstrng.match(pat).join("\n");
alert(nstrng);
</script>

解决方案 »

  1.   

    var pat = /([a-z]+|\d+)/gi;
    这样也许效率会高点吧
      

  2.   

    楼上的方法不行,先去掉csdn,再找其他的单词,是方法,但不是我想要的。
      

  3.   

    <script language="JavaScript" type="text/javascript">
    var str="search 900 csdn 1200 net";
    re = /\b(?!(csdn))[A-Za-z0-9]+\b/ig;
    alert(str.match(re));
    </script>
      

  4.   

    不好意思.那个re掉了个var,不过也没关系,JS用不用VAR都一样.....
      

  5.   

    对, /\b(?!(csdn))[A-Za-z0-9]+\b/ig;