何らかの理由で、ifステートメントが機能するようにこれを取得できません
if (htmlCode.Contains("Sign out") && !htmlCode.Contains("bye bye"))
{
// do stuff...
}
同じifステートメントで機能するcontainsとcontainsを取得する方法はありますか?
何らかの理由で、ifステートメントが機能するようにこれを取得できません
if (htmlCode.Contains("Sign out") && !htmlCode.Contains("bye bye"))
{
// do stuff...
}
同じifステートメントで機能するcontainsとcontainsを取得する方法はありますか?
まず、htmlCodeを確認します。テキストは、いくつかのhtmlタグなどと混在している可能性があります。また、ケースについても問題が発生する可能性があります。テキスト内の文字列を検索する場合は、ケースについて常に覚えておく必要があります。
.Contains
メソッドまたはを使用できます.IndexOf
。実際には、フレームワークの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 clause works correctly
It might be not working because of the string case
So i would suggest you do it this way
if (htmlCode.ToUpper().Contains("Sign out".ToUpper()) && !htmlCode.ToUpper().Contains("bye bye".ToUpper()))