首頁 >Java >Java基礎 >java怎麼判斷字串是否中文

java怎麼判斷字串是否中文

尚
原創
2019-11-22 09:28:173913瀏覽

java怎麼判斷字串是否中文

Java用的是Unicode 編碼char 型變數的範圍是0-65535 無符號的值,可以表示65536個字符,基本上地球上的字符可被全部包含了

漢字基本集中在[19968,40869]之間,共有20901個漢字。

unicode編碼範圍:

漢字:[0x4e00,0x9fa5](或十進位[19968,40869])

數:[0x30,0x39](或十進位[48 , 57])

小寫字母:[0x61,0x7a](或十進位[97, 122])

大寫字母:[0x41,0x5a](或十進位[65, 90])

第一種判斷是否存在漢字

public boolean checkcountname(String countname)
    {
         Pattern p = Pattern.compile("[\u4e00-\u9fa5]");
            Matcher m = p.matcher(countname);
            if (m.find()) {
                return true;
            }
            return false;
    }

用正規表示式去匹配

第二種判斷整個字串都由漢字組成

public boolean checkname(String name)
    {
        int n = 0;
        for(int i = 0; i < name.length(); i++) {
            n = (int)name.charAt(i);
            if(!(19968 <= n && n <40869)) {
                return false;
            }
        }
        return true;
    }

更多java知識請關注java基礎教程

以上是java怎麼判斷字串是否中文的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn