<input onkeyup="this.value=this.value.replace(/[^\u4E00-\u9FA5]/g,'')" />当激发onkeyup事件 激活正则验证replace(/[^\u4E00-\u9FA5]/g,'')引用正则是 “/” 开头 “/g” 结尾就可以吗? 中间还有什么规则没有?

解决方案 »

  1.   

    这个是替换所有非中文为空的正则,这个是javascript正则的书写方式,/开头/结束是标准的perl正则格式,g是修正符.
    []可指定匹配范围,[a-z]表示匹配a至z之间的所有小写字符,[^a-z]表示匹配非小写英文字符的所有字符.
    同理,因为中文的unicode码是从4e00 到 9fa5,所以[^\u4E00-\u9FA5]匹配所有非中文的字符 g修正符表示匹配所有符合条件的字符,不加g就只匹配一次就停止继续往下匹配了,相当于php里preg_match和preg_match_all的区别.
    多多google一下.