这些字符串如何不同?

时间:2016-06-20 10:41:50

标签: character-encoding

我面临一个奇怪的问题。

我从Excel文件中提取数据。它应包含IBAN帐号。

然后我尝试用Java库分析一组帐号(源保证是好的)。

为了使问题范围缩小,我无法解释以下内容。以下字符串不同

030​69
03069

第一个是副本&从Excel文件粘贴,第二个是手写的。 Google会为abi [above number]返回不同的结果,事实上在第二种情况下,我发现它是Intesa Sanpaolo银行的银行代码(显示ABI代码的确切页面,已本地化,here)。

所以,为了缩小范围:这怎么可能?这与编码有关吗?

自己尝试:按CTRL + F并尝试键入“030”,它将选择两行。现在输入6,它只匹配第二行。

在Notepad ++中也是如此

1 个答案:

答案 0 :(得分:1)

第一个文本中03069之间有U+200B ZERO WIDTH SPACE

将文本粘贴到https://www.branah.com/unicode-converter中,或者在支持十六进制的编辑器中进行编辑。

清理此类字符串的解决方案可能是将字符列入白名单,因此请替换不是A-Z0-9的所有内容。