java汉语言的判断

java中文的判断
public class TestChractor {
	public void m(String str) {
		int m = 0;
		// String res = ;
		Pattern pattern = Pattern.compile("[\\u4e00-\\u9fa5]");
		Matcher matcher = pattern.matcher(str);
		while (matcher.matches()) {
			System.out.println(matcher.group());
		}
	}

	public static void main(String[] args) {
		String str = "我是,123";
		// int j = 0;
		// // System.out.println(str.length()+","+str.getBytes().length);
		// for (int i = 0; i < str.length(); i++) {
		// char ch = str.charAt(i);
		// if (ch < 255 && ch > 0) {
		// j = j + 1;
		// } else {
		// j = j + 2;
		// }
		// }
		new TestChractor().m(str);
	}
注意:用code即charAt存在一个问题:全角都被理解成中文来计算。但是Pattern就不存在这个问题了!