如何运用js来校验一段字符串是否为汉字?
如何运用js来校验一段字符串是否为汉字?
问题点数:100、回复次数:10Top
1 楼xinyunyishui(心云意水)回复于 2005-01-11 10:41:53 得分 70
<script language=JavaScript>
alert(/[^\x00-\x80]/ig.test("adsf"))
alert(/[^\x00-\x80]/ig.test("啊啊啊啊啊"))
</script>Top
2 楼tpf9000(流光鸟)回复于 2005-01-11 10:46:05 得分 0
厉害,顶Top
3 楼whb147(苦乐随缘)回复于 2005-01-11 10:50:43 得分 0
来晚了,呵呵Top
4 楼meizz(梅花雪)回复于 2005-01-11 10:52:19 得分 25
不行呀心云, 你的判断只要字符串里有一个汉字就成立呀.
<script language=JavaScript>
alert(!/[^\u4E00-\u9FA5]/.test("adsf"));
alert(!/[^\u4E00-\u9FA5]/.test("啊啊啊啊啊"));
alert(!/[^\u4E00-\u9FA5]/.test("ad啊sf")); //对这种混合的字符串呢??
</script>Top
5 楼xinbuzailiulei()回复于 2005-01-11 10:55:53 得分 0
\uf900-\ufa2d也应该有的.
/^[\u4e00-\u9fa5\uf900-\ufa2d]+$/Top
6 楼boneeater(狗狗)回复于 2005-01-11 11:08:33 得分 5
用正则表达式啊
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
至于用法前面的各位都说明了
Top
7 楼xinyunyishui(心云意水)回复于 2005-01-11 11:11:42 得分 0
<script language=JavaScript>
alert(!/[\x00-\x80]/ig.test("adsf"))
alert(!/[\x00-\x80]/ig.test("啊啊啊,啊啊"))
alert(!/[\x00-\x80]/ig.test("啊啊asdf啊啊啊"))
</script>
Top
8 楼meizz(梅花雪)回复于 2005-01-11 11:16:54 得分 0
心云: "啊啊¢啊啊啊" 这个字符串呢?? 你只判断非\x00-\x80这个范围太大了. 其中包括很多不是汉字的字符呀Top
9 楼cghdenglu(小树)回复于 2005-01-11 11:32:55 得分 0
楼上的强,学习.......Top
10 楼xinyunyishui(心云意水)回复于 2005-01-11 11:39:22 得分 0
那倒是,标点符号之类的都算进去了…Top




