请问如何判断输入的是不是中文?没遇到过这问题,头大

wowonan 2004-10-28 04:37:42
如题,help,help!
...全文
68 点赞 收藏 5
写回复
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
oswicer 2004-10-28
public boolean isCN(String str) {
return str.length() < str.getBytes().length;
}

有一个问题需要注意,如果这个str是从页面提交的,需要先做中文转码
public static boolean isCN(String str ) {
try {
str = new String(str.getBytes("iso8859_1"), "gb2312");
} catch (UnsupportedEncodingException ex) {
}
return str.length() < str.getBytes().length;
}
回复
wowonan 2004-10-28
如果是中文状态下的(),。*—#!·
这些有什么好方法判断吗?谢谢
回复
鱼鱼 2004-10-28
用正则表达式
回复
apicescn 2004-10-28
对于这个问题你可以用js脚本来控制,以前用这这样的脚本控制,其要求比较严格,只能输入中文连空格都不行,不过你可以对其进行修改.具体js代码如下:
function isChinese(s){
if (s.value==""){
alert ('该栏不能为空,请输入');
return false;
}
var reg = /[^\u4E00-\u9FA5]/g;
if (reg.test(s.value)){
s.focus();
s.select();
alert('该栏只能输入中文,请改正');
return false;
}
return true;
}
这样在页面上直接调用就行了。
回复
wowonan 2004-10-28
help!
回复
发动态
发帖子
Web 开发
创建于2007-09-28

7.9w+

社区成员

Java Web 开发
申请成为版主
社区公告
暂无公告