现在在尝试匹配两个 Scala 字符串时处理一个奇怪的问题。在尝试确定以下两个字符串是否相同时:
SM8lz5IEIWs7TUhR3ke27pnY3XsjojxqaMEg+ARCGs1nm3sVkwA+CM+XJfdsUxqzqH7LZdkflvny
z621tYkmXA==
和SM8lz5IEIWs7TUhR3ke27pnY3XsjojxqaMEg+ARCGs1nm3sVkwA+CM+XJfdsUxqzqH7LZdkflvny
z621tYkmXA==
斯卡拉回归false
。因此,如果我执行以下操作,if(hash1 == hash2)
它会返回false
.
我怀疑这是空格或字符编码问题,因为哈希匹配仅在尝试匹配在不同操作系统的计算机上生成的哈希时才会失败。我已经尝试使用正则表达式去除空格,但仍然失败。
我忽略了什么?有没有更好的方法来清理和匹配 Scala 中的哈希?
更新
比较两个字符串后,Scala 认为hash2
单个字符比hash1
. 所以我在两个哈希上运行了以下函数.trim.replaceAll("""(?m)\s+$""", "")
:不过,它说它们不一样。还有哪些其他角色可能会干扰?