如何去掉一些特殊的空格
1、去掉字符串首尾的普通空格
字符串可以使用.trim()方法去掉首尾的空格,但是无法去除中间得空格。
String a = " ashjs klkl ";
System.out.println(a.trim());
2、去掉字符串中的制表符
这种情况是一般前端的数据之类的,使用node解析后获得的字符串,会将前端中的换行啊,退格啊等都替换成对应的转译字符 \t \n \r \s 等等
// 有的操作系统\r\n连用表示是换行,有的是只需要\n就可以表示
String b = "a\r\nbs\tvvvv";
System.out.println(b);
b = b.replaceAll("\n|\r|\t|\\s","");
System.out.println(b);
3、去掉 ;所代表的空格
有的前端的 ;我们使用node解析以后获取的字符串会自动转换空格,但是不论是使用trim()方法,还是替换转译字符,都无法去掉这个空格,例如下面这种
像这样的数据我们使用node解析以后获取的字符串中的空格就去不掉,这个时间可以使用下面的代码,直接替换对应的Unicode码
b = b.replaceAll("\\u00a0", "");
这里解释下
常见的几种前端空格对应的Unicode码
nbsp 对应 \u00a0
emsp 对应 \u2003
ensp 对应 \u2002
4、其他的情况
当然,如果是其他情况可以考虑使用正则