在寻找一种从解析的HTML中修剪不间断空间的正确方法的同时,我首先偶然发现java的斯巴达定义String.trim()至少是正确记录的.我想避免明确列出符合修剪条件的字符,所以我假设在Character类上使用Unicode支持的方法可以帮我完成工作.
那时我发现Character.isWhitespace(char)明确排除了不间断的空格:
它是Unicode空格字符(
SPACE_SEPARATOR,LINE_SEPARATOR或PARAGRAPH_SEPARATOR),但不也是非打破空间('\u00A0','\u2007','\u202F').
这是为什么?
相应的.NET等价物的实现不那么有区别.