如何在Java中修剪不间断空间?
问题内容:
[我已输入,我需要处理和丢弃所有的白色空间,包括非换空间的输入文件U+00A0
又名 
(您可以通过按生产它在记事本中Alt
,然后键入0
1
6
0
从键盘的数字小键盘。)或任何其他形式的空白空间。我已经尝试过了,String.trim()
但是没有修剪U+00A0
。
我是否需要显式检查U+00A0
,然后trim()
是否有一种简便的方法来修剪Java中的所有空白?
问题答案:
虽然 
是一个不间断的空格(不想被视为空格的空格),但是您可以修剪字符串,同时 
使用简单的正则表达式保留字符串中的每个字符串:
string.replaceAll("(^\\h*)|(\\h*$)","")
\h
是水平空白字符:[ \t\xA0\u1680\u180e\u2000-\u200a\u202f\u205f\u3000]
如果您使用的是JDK8之前的版本,则需要显式使用字符列表而不是\h
。