2019独角兽企业重金招聘Python工程师标准>>>

package a.b.c;/** * 半角、全角文字处理工具类 *  */
public class DbcSbcUtils {  /** * 半角、全角字符判断 *  * @param c *            字符 * @return true:半角; false:全角 */  public static boolean isDbcCase(char c) {  // 基本拉丁字母(即键盘上可见的,空格、数字、字母、符号)  if (c >= 32 && c <= 127) {  return true;  }  // 日文半角片假名和符号  else if (c >= 65377 && c <= 65439) {  return true;  }  return false;  }  /** * 字符串长度取得(区分半角、全角) *  * @param str *            字符串 * @return 字符串长度 */  public static int getLength(String str) {  int len = 0;  for (int i = 0; i < str.length(); i++) {  char c = str.charAt(i);  if (isDbcCase(c)) { // 半角  len = len + 1;  } else { // 全角  len = len + 2;  }  }  System.out.println("#### LEN ="+len);  return len;  }  /** * 字符串截取(区分半角、全角) *  * @param str *            字符串 * @param limit *            长度 * @return */  public static String getPatStr(String str, int limit) {  if (getLength(str) <= limit) {return str;}
//        limit = limit - 4;char[] chars = str.toCharArray();  int charLenSum = 0;  String result = "";  for (int i = 0; i < chars.length; i++) {  int charLen = isDbcCase(chars[i]) ? 1 : 2;  if (charLenSum + charLen > limit) {  return result + "...";  }  charLenSum += charLen;  result += chars[i];  if (charLenSum == limit) {  return result + "...";  }  }  return "";  }  public static void main(String[] args) {  System.out.println(getPatStr("全角文字", 10));  System.out.println(getPatStr("全角文字判", 10));  System.out.println(getPatStr("全角文字12", 10));  System.out.println(getPatStr("全角文字123", 10));  System.out.println(getPatStr("12345678901234567890", 14));  System.out.println(getPatStr("一二三四五六七八九十", 14));  }
}

转载于:https://my.oschina.net/u/2273965/blog/674588

【Android】全角字符半角字符工具类相关推荐

  1. Java实现全角和半角字符相互转换

    平凡也就两个字: 懒和惰; 成功也就两个字: 苦和勤; 优秀也就两个字: 你和我. 跟着我从0学习JAVA.spring全家桶和linux运维等知识,带你从懵懂少年走向人生巅峰,迎娶白富美! 关注微信 ...

  2. Java全角、半角字符的关系以及转换

    如果搞明白了Java中全角字符和半角字符之间的关系,那他们之间的转换就不是个麻烦事儿.你只需要对这个关系有那么一个印象就足够了. 全角字符与半角字符的关系 通过下面的代码能看到Java中所有字符以及对 ...

  3. java 全角_Java全角、半角字符的关系以及转换

    如果搞明白了Java中全角字符和半角字符之间的关系,那他们之间的转换就不是个麻烦事儿.你只需要对这个关系有那么一个印象就足够了. 全角字符与半角字符的关系 通过下面的代码能看到Java中所有字符以及对 ...

  4. SQL Server中全角和半角字符的比较问题

    /*------------------------------------------------------------------------------------ /*欢迎转载,请保留本声明 ...

  5. java全角数字_Java全角、半角字符的关系以及转换

    如果搞明白了Java中全角字符和半角字符之间的关系,那他们之间的转换就不是个麻烦事儿.你只需要对这个关系有那么一个印象就足够了. 全角字符与半角字符的关系 通过下面的代码能看到Java中所有字符以及对 ...

  6. java 全角_java全角、半角字符的关系以及转换详解

    如果搞明白了Java中全角字符和半角字符之间的关系 那他们之间的转换根本就不是个事. 全角字符与半角字符的关系 可以通过下面的程序看看Java中所有字符以及对应编码的值 public static v ...

  7. PHP全角和半角字符怎么区分,php字符串处理之全角半角转换,php字符串全角半角_PHP教程...

    php字符串处理之全角半角转换,php字符串全角半角 半角全角的处理是字符串处理的常见问题,本文尝试为大家提供一个思路. 一.概念 全角字符unicode编码从65281~65374 (十六进制 0x ...

  8. Java 全角与半角字符的转换

    1.什么是全角和半角? -- 百度百科 1)全角(Full-width):是一种电脑字符,是指一个全角字符占用两个标准字符(或两个半角字符)的位置.全角占两个字节(16位). 汉字字符和规定了全角的英 ...

  9. PHP全角和半角字符怎么区分,学习猿地-php如何实现全角符号转半角

    php实现全角符号转半角的方法:首先创建一个PHP示例文件:然后定义一个"SBC_DBC($str,$args2=1) {...}"方法:最后通过"str_replace ...

  10. c语言判断全角和半角字符,对于字符串中全角字符和半角字符的判断

    先拿空格来说: public class Test { private  String regex = "^[//u0020//u3000]*$"; public boolean ...

最新文章

  1. 编写函数求两个整数 a 和 b 之间的较大值。要求不能使用if, while, switch, for, ?: 以 及任何的比较语句。...
  2. Java HashMap的死循环的启示
  3. [七月挑选]Tomcat使用命令行启动之指定jdk版本
  4. 面对不同的业务场景,选择零码还是低码?
  5. 第k小的数(二分、partition)
  6. SQL Server中的联合主键、聚集索引、非聚集索引、mysql 联合索引
  7. 【全家福】多项式的各种板子
  8. Intellij IDEA 设置字体的大小
  9. 计算机怎么给表格添加蓝色边框,excel表格蓝色边框锁定|excel如何选择多个下拉菜单中的选项?...
  10. 如何修改github博客主题
  11. 新视角 | 新形势下工厂设备管理的5大误区
  12. 联想微型计算机c325参数,联想一体机c325性能表现 联想一体机c325配置参数
  13. 磁共振检查头部能检测出什么_头部核磁共振可以检查什么?
  14. vue 使用 currency.js 处理 小数的相加减 精度问题
  15. nyoj 1的个数 514 (数学)
  16. nodejs express搭建服务器(爬虫知乎精华帖,个人学习用)六 在express中建立路由
  17. Windows 10 配置OpenGL ES 3.0 环境
  18. 51Nod基础组(Python)
  19. antd modal 拖动_antd的Modal可移动(可拖拽)
  20. 超实用web前端开发工具推荐(web开发+前端性能优化+浏览器兼容性测试+……)

热门文章

  1. MyEclipse默认编码为GBK,修改为UTF8的方法
  2. 最新中国大学排行榜:北大清华浙大竞争力列前三
  3. IIS6.0限制上传文件大小的解决办法
  4. 学习笔记(3.29)
  5. java基础之继承补充和抽象类
  6. Android Studio 使用Gradle引入第三方库文件的总结
  7. 浅谈MVC Form认证
  8. logging 模块记录日志
  9. jQuery省市区三级联动插件
  10. 老牛:虚拟化让工作如此智慧