今天碰到个问题,同样的sql,但是查询出了2条结果,一条能正常查出来,一条查询出无结果。第一反应就是编码不对,通过代码equals比较,结果输出为false。
然后打印字符串length发现,2个字符串确实长度不一样,肉眼是可不见的!
解决办法是
s = s.replaceAll("\\p{C}", "");
然后在equals,结果输出为true,至此,问题解决。
原因:有不可见字符(zero-width non-joiner (ZWNJ),zero-width space (ZWSP) 这两种)