测试代码:
package unicode; import org.apache.commons.lang3.StringUtils; public class ChineseTest { public static void main(String[] args) { ChineseTest tool = new ChineseTest(); System.out.println(tool.containsChineseCharacter("Helloab!?12D#asDSF!&#$")); System.out.println(tool.containsChineseCharacter("你好 ")); } protected boolean containsChineseCharacter(final String s) { if (StringUtils.isNotEmpty(s)) { for (int i = 0; i < s.length();) { final int codepoint = s.codePointAt(i); System.out.println("Code Point: " + codepoint); i += Character.charCount(codepoint); System.out.println("i: " + i + " CharCount: " + Character.charCount(codepoint)); if (Character.UnicodeScript.of(codepoint) == Character.UnicodeScript.HAN) { return true; } } } return false; } }输出:
Code Point: 72 i: 1 CharCount: 1 Code Point: 101 i: 2 CharCount: 1 Code Point: 108 i: 3 CharCount: 1 Code Point: 108 i: 4 CharCount: 1 Code Point: 111 i: 5 CharCount: 1 Code Point: 97 i: 6 CharCount: 1 Code Point: 98 i: 7 CharCount: 1 Code Point: 33 i: 8 CharCount: 1 Code Point: 63 i: 9 CharCount: 1 Code Point: 49 i: 10 CharCount: 1 Code Point: 50 i: 11 CharCount: 1 Code Point: 68 i: 12 CharCount: 1 Code Point: 35 i: 13 CharCount: 1 Code Point: 97 i: 14 CharCount: 1 Code Point: 115 i: 15 CharCount: 1 Code Point: 68 i: 16 CharCount: 1 Code Point: 83 i: 17 CharCount: 1 Code Point: 70 i: 18 CharCount: 1 Code Point: 33 i: 19 CharCount: 1 Code Point: 38 i: 20 CharCount: 1 Code Point: 35 i: 21 CharCount: 1 Code Point: 36 i: 22 CharCount: 1 false Code Point: 20320 i: 1 CharCount: 1 true
---来自腾讯云社区的---Jerry Wang
微信扫一扫打赏
支付宝扫一扫打赏