日期:2014-05-20  浏览次数:20737 次

java中如何限制用户只能输入中文汉字?
需要限制用户只能输入汉字,汉字中的句号。逗号,等标点符号也要禁止输入,有没有坛友这样搞过?

------解决方案--------------------
[\u4e00-\u9fa5]

------解决方案--------------------
楼上正解!!
------解决方案--------------------
[\u4e00-\u9fa5]
正解
------解决方案--------------------
汉字编码:\u4e00-\u9fa5用来判断是不是中文的一个条件
------解决方案--------------------
var username = XXX;
if(/^([\u4e00-\u9fa5])+$/.test(username)){
...

可以用正则!
------解决方案--------------------
楼主问题能说清楚吗什么地方限制只能输入汉子到底是web的input输入框还是swing的JTextField
------解决方案--------------------

/**
 * 判定输入汉字
 * @param c
 * @return
 */
    public  boolean isChinese(char c) {
        Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);
        if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS
             
------解决方案--------------------
 ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS
            
------解决方案--------------------
 ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A
            
------解决方案--------------------
 ub == Character.UnicodeBlock.GENERAL_PUNCTUATION
            
------解决方案--------------------
 ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION
            
------解决方案--------------------