现在我需要过滤所有的中文,只是汉字 但不过滤汉字的标点符号例如(,。?:“)这些是不过滤的 请问大家这个正则怎么写

解决方案 »

  1.   

    str.replace(/[u4e00-u9fa5]/g,"");//str为整个原字符串
      

  2.   

    var reg = /^[\u4e00-\u9fa5]+$/;
    var testArr = ['中国',',','testettt'];
    for(var i in testArr) {
    alert(reg.test(testArr[i]));
    }
      

  3.   

    <input type="text" onBlur="this.value=(this.value).replace(/[\u4E00-\u9FA5]/g,'')" value=""   />
      

  4.   


    var str = '发生的,';
    var re = /^[\u4E00-\u9FA5\uFE30-\uFFA0]+$/;
    alert(re.test(str))楼主试试
      

  5.   

    眼花,不包括 中文符号啊?    var str = '发生的,';
        var re = /^[\u4E00-\u9FA5]+$/;
        alert(re.test(str))
      

  6.   

    var reg = /[\u4e00-\u9fa5]+/g;
    var testArr = '中国岁的李凤姐阿隆索,斯蒂芬了解阿莱克斯点附近拉丝机ismdflk'
    alert(testArr.replace(reg,''));
      

  7.   

    这样替换 var str = '发生的123';
    var re = /[\u4E00-\u9FA5]+/;
    alert(str.replace(re,''))
      

  8.   

    昏,,少了个g
    var re = /[\u4E00-\u9FA5]+/g;
      

  9.   

    var s = "标点符号例如(,。?:“)这些是不过滤的";
    var reg = /([,。?:“])|([\u4e00-\u9fa5])/g;
    var rep = "*";alert(s.replace(reg, function(g, g1, g2){
        if(g1) return g1;
        if(g2) return rep;
    }));
      

  10.   

    不好意思,这个是对的了,我验证过了。。
    str.replace(/[\u4e00-\u9fa5]/g, ""); 
      

  11.   

    谢谢 大家了 找到原因了 一个地方我替换成[\u4E00-\u9FA5] 另一个地方用的还是[^\x00-\xff] 替换过来就可以了谢谢了
      

  12.   


    var str="我asda在asaas发vjlks。,。?:“.djf";
    var t=str.replace(/[\u4e00-\u9fa5]/g, ""); 
    alert(t);//asdaasaasvjlks。,。?:“.djf