比较两个相同的字符串,但在C#中返回false。Don';我不知道为什么????
expected=“全胜” 实际=“全胜” 我也使用了“Contains”方法,但只返回false。 请帮我解决这个问题比较两个相同的字符串,但在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。但是现在我怎么能前进呢 一种方法是通过用基线替换某些字符来规范化字符串。在您的情况下,
我得到的结果是,我打印了它的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;
}