最近做POI导入导出时候遇到一个无法删除的空格问题。
原因:
ASCII码中有两种特殊空格,虽然显示一样,但对应的的ASCII 码值不一样(一个码值32,一个码值160);
ASCII值是32:是用键盘输入的空格,
ASCII值是160:不间断空格(non-breaking space,缩写nbsp),即前端使用 所产生的空格;
前者组成的空字符串可以被String类trim()函数所清除,正则表达式\s所匹配,后者刚好与前者相反,并且两者是不相等。
![](https://img.haomeiwen.com/i7207591/f7a5a1e71fc14aba.png)
![](https://img.haomeiwen.com/i7207591/576b16677bf679af.png)
![](https://img.haomeiwen.com/i7207591/379affa5279ec14a.png)
![](https://img.haomeiwen.com/i7207591/9216c98f042b46df.png)
最终结论:
按以上测试结果,处理空格时候要分类型处理,或者直接将 类型空格转换为键盘输入的空格。
![](https://img.haomeiwen.com/i7207591/3b873b55c66c6c3b.png)
![](https://img.haomeiwen.com/i7207591/69d4dbea941b5df0.png)
参考文章链接
网友评论