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中文網其他相關文章!