在基本字符串比较中完全奇怪的行为

han*_*Gun 2 .net vb.net string

这对我没有任何意义.必须是错误的或痛苦的.

切片和切块后,我在vb.net中获得了2个具有以下值的变量:

strTag = "&lt;#<span class=SpellE>vermittler_person_Name</span>&gt;"
tmp    = "&lt;#<span class=SpellE>vermittler_person_Name</span>&gt;"
Run Code Online (Sandbox Code Playgroud)

比较变量给出了错误:

strTag = tmp ' ==> false
Run Code Online (Sandbox Code Playgroud)

直接比较这些值给出了一个真实的:

"&lt;#<span class=SpellE>vermittler_person_Name</span>&gt;" = "&lt;#<span class=SpellE>vermittler_person_Name</span>&gt;" ' ==> true
Run Code Online (Sandbox Code Playgroud)

两者都是字符串,我尝试了各种各样的东西:string.compare,string.equals,还有正则表达式等.一切都与所有其他字符串结构完美配合,只是没有,只有不与

"vermittler_person_Name"
Run Code Online (Sandbox Code Playgroud)

在中间...任何想法?

Jon*_*eet 8

我强烈怀疑虽然两个显示的字符串是相等的,但内部数据并不相同.那里可能有任意数量的非打印字符.

如果您能够重现这一点,我建议您查看违规字符串的每个字符的Unicode值.如果我是对的,由于显而易见的原因,我们将无法通过仅包含可见字符的SO帖子重现这一点.