Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
比较两个相同的字符串,但在C#中返回false。Don';我不知道为什么????_C#_C# 4.0_Selenium Webdriver_C# 3.0 - Fatal编程技术网

比较两个相同的字符串,但在C#中返回false。Don';我不知道为什么????

比较两个相同的字符串,但在C#中返回false。Don';我不知道为什么????,c#,c#-4.0,selenium-webdriver,c#-3.0,C#,C# 4.0,Selenium Webdriver,C# 3.0,expected=“全胜” 实际=“全胜” 我也使用了“Contains”方法,但只返回false。 请帮我解决这个问题 我得到的结果是,我打印了它的ascii值,实际的空间值是160,预期的空间值是32。但是现在我怎么能前进呢 一种方法是通过用基线替换某些字符来规范化字符串。在您的情况下,可以使用“正常”空间替换非中断空间: 我得到的结果是,我打印了它的ascii值,实际的空间值是160,预期的空间值是32。但是现在我怎么能前进呢 一种方法是通过用基线替换某些字符来规范化字符串。在您的情况下,

expected=“全胜”

实际=“全胜”

我也使用了“Contains”方法,但只返回false。 请帮我解决这个问题


我得到的结果是,我打印了它的ascii值,实际的空间值是160,预期的空间值是32。但是现在我怎么能前进呢

一种方法是通过用基线替换某些字符来规范化字符串。在您的情况下,可以使用“正常”空间替换非中断空间:


我得到的结果是,我打印了它的ascii值,实际的空间值是160,预期的空间值是32。但是现在我怎么能前进呢

一种方法是通过用基线替换某些字符来规范化字符串。在您的情况下,可以使用“正常”空间替换非中断空间:


希望字符串周围没有空格,您尝试了
Trim()
我也尝试了,但仍然不起作用。您可以指向变量add使用屏幕截图捕获值吗?请将它们添加到问题中,以显示这两个值,而不是键入有问题的值。根据您从何处读取字符串,其中可能有一些不可见的字符会产生差异。循环遍历字符串中的每个字符,并显示每个字符的整数代码点,并以这种方式查找差异。你可能会对你的发现感到惊讶。我得到的东西就像我打印了它的ascii值,实际的空间值是160,预期的空间值是32。但是现在我该怎么做呢?希望字符串周围没有空格,您尝试了
Trim()
我也尝试了,但仍然不起作用。您可以指向变量add使用屏幕截图捕获值吗?请将它们添加到问题中,以显示这两个值,而不是键入有问题的值。根据您从何处读取字符串,其中可能有一些不可见的字符会产生差异。循环遍历字符串中的每个字符,并显示每个字符的整数代码点,并以这种方式查找差异。你可能会对你的发现感到惊讶。我得到的东西就像我打印了它的ascii值,实际的空间值是160,预期的空间值是32。但是现在我怎么能前进呢??
     public bool VerifyTextPresent(By by, String actual)
    {
            WaitUntilElementIsPresent(by);
            String expected = GetText(by);
            return expected.Equals(actual);

    }
 public bool VerifyTextPresent(By by, String actual)
{
        WaitUntilElementIsPresent(by);
        String expected = GetText(by);

        if (expected.Equals(actual)) return true;
        if (expected.Equals(Normalize(actual))) return true;
        return false;
}

private string Normalize(string s)
{
    // hard-code for now; could use a lookup table or other means to expand  
    s = s.Replace((char)160, (char)32);
    // other replacements as necessary

    return s;

}