<script type="text/javascript">
var str_char = "身"
var str_rule_rep = /^[\u4E00-\u9FA5]+$/
alert(str_rule_rep.test(str_char))  //alert true
</script>

解决方案 »

  1.   

    /^[^\u4E00-\u9FA5]+$/
    其实你对正则理解得没问题 而是对判断逻辑不理解
    你得正则作用就是要返回false
      

  2.   

    那试了
    var str_rule_rep = /^[^\u4E00-\u9FA5]+$/没?
    就是加了个^号的加个^号,在这里是什么意思呢?能解释下不我的刚才试了你的方法,还是不行。。很奇怪。。
      

  3.   

    给你个好文,里面讲的很详细,相信你会有所收获
    http://www.unibetter.com/deerchao/zhengzhe-biaodashi-jiaocheng-se.htm
      

  4.   


    <script type="text/javascript">
    var str_char = "身"
    var str_rule_rep = /^[\u4E00-\u9FA5]+$/
    alert(str_rule_rep.test(str_char)) //alert true 
    </script>
    这样不行?alert true 就是正确的,如果你要判断不是的可以
    if(!str_rule_rep.test(str_char))/^[^\u4E00-\u9FA5]+$/是判断不是汉字,^是取反的意思,也就是不是汉字
      

  5.   

    /^[\u4E00-\u9FA5]+$/
    是可以的,测试汉字会返回true
    不知道你你那是什么原因
      

  6.   

    for_cyan(Cyan) 
    哈哈,我今天开始看的正则表达式,就是看的
    http://www.unibetter.com/deerchao/zhengzhe-biaodashi-jiaocheng-se.htm上面的介绍的。恩。OK,我知道了。mingxuan3000(铭轩) :我刚才试了,直接JS写的话,确实是可以的。可能,我使用的不是JAVASCRIP,而是另一种工具,采用了JS的方法。可能和这个有关系。所以导致了这个问题。OK,我在研究下。。谢谢两位!