java 汉、日、韩文字符长度为2,ASCII码等字符长度为1

来源:互联网 发布:python数据结构 编辑:程序博客网 时间:2024/04/29 09:51
public  String formateGameSimpleInfoNm(String s, int n) {   Pattern p = Pattern.compile("^[\\u4e00-\\u9fa5]{1}quot;);int i = 0, j = 0;for(char c : s.toCharArray()) {Matcher m = p.matcher(String.valueOf(c));i += m.find() ? 2 : 1;++j;if(i == n) break;if(i > n) {--j;break;}}if(s.equals(s.substring(0, j))) {return s.substring(0, j);}else {return s.substring(0, j) + "...";}}


 

百度上看到的