出于某种原因,我无法让这个 if 语句起作用
if (htmlCode.Contains("Sign out") && !htmlCode.Contains("bye bye"))
{
// do stuff...
}
有什么方法可以让包含和不包含在相同的 if 语句中工作?
出于某种原因,我无法让这个 if 语句起作用
if (htmlCode.Contains("Sign out") && !htmlCode.Contains("bye bye"))
{
// do stuff...
}
有什么方法可以让包含和不包含在相同的 if 语句中工作?
首先检查htmlCode,文本可能与一些html标签或类似的东西混合在一起,问题也可能与案例有关,当您尝试在文本中查找某些字符串时,您应该始终记住案例。
可以使用.Contains
method 或.IndexOf
,实际上Framework中的 contains 方法是这样实现的:
public bool Contains(string value)
{
return this.IndexOf(value, StringComparison.Ordinal) >= 0;
}
为了比较大字符串而不知道我会使用的情况:
htmlCode.IndexOf("Sign out", StringComparison.InvariantCultureIgnoreCase);
htmlCode.IndexOf("Bye bye", StringComparison.InvariantCultureIgnoreCase);
如果您知道响应会很小,您可以使用.ToLower()
或.ToUpper()
尝试通过转换大写或小写来进行比较。
if (htmlCode.ToUpper().Contains("SIGN OUT") && !htmlCode.ToUpper().Contains("BYE BYE"))
{
// do stuff...
}
You if 子句正常工作
由于字符串大小写,它可能无法正常工作
所以我建议你这样做
if (htmlCode.ToUpper().Contains("Sign out".ToUpper()) && !htmlCode.ToUpper().Contains("bye bye".ToUpper()))