1、去掉前后的空格
String里最常用的方法trim()。
String s = " abc "; Sysout.println("--" + s.trim() + "--");
打印的结果
--abc--
2、去掉字符串中间的空格
试用环境:比如从word,excl或者数据库中取用户名时,“李四”和“李 四”和“李 四”都应该为同一个用户。
public String del_space(String str) { if (str == null) { return null; } char[] str_old = str.toCharArray(); StringBuffer str_new = new StringBuffer(); int i = 0; for (char a : str_old) { if (a != ' ') { str_new.append(a); i++; } } return str_new.toString(); }
3、去掉字符串右边的空格
试用环境:如让用户编辑个性签名,在后台处理再存入数据库,此时要保留最前面的空格(方便前台可输入字符数的提示,以及重设时的回显)。
String ss = " abc "; System.out.println("字符串中除去空格后的长度--"+ss.trim().length()); System.out.println("字符串中第一个非空格的位置--"+ss.lastIndexOf(ss.trim())); System.out.println(ss.substring(0, ss.lastIndexOf(ss.trim())+ss.trim().length())+"--");
打印结果
字符串中除去空格后的长度--3 字符串中第一个非空格的位置--1 abc--
4、去掉字符串右边的空格
String ss = " abc "; String s = ss.substring(ss.lastIndexOf(ss.trim())); System.out.println(s + "--");
打印结果
abc --
5、关于多个空格的字符串,如“ ”,只考虑去掉右空格的情况,左、前后及中间的空格请自行考虑
试用环境:不仅是trim()这么简单的处理。
将3里的" abc "换成" "。
String ss = " "; System.out.println("字符串的总长度"+ss.length()); System.out.println("字符串中除去空格后的长度--"+ss.trim().length()); System.out.println("字符串中第一个非空格的位置--"+ss.lastIndexOf(ss.trim())); System.out.println(ss.substring(0, ss.lastIndexOf(ss.trim())+ss.trim().length())+"--");
打印结果
字符串的总长度3 字符串中除去空格后的长度--0 字符串中第一个非空格的位置--3 --