只需使用的IndexOf在兩個字符串,然後使用if表達
Dim pos1 = String1.IndexOf("something")
Dim pos2 = String2.IndexOf("something else")
if pos1 < 0 AndAlso pos2 < 0 then
' the string1 doesn't contain "something" and string2 doesn't contain "something else"
End If
string.IndexOf返回作爲參數傳遞的字符串的字符位置。如果在源字符串中找不到參數,則返回值爲-1,如MSDN docs
中所解釋的,如果您的搜索項包含與輸入字符串不同的大小寫字符,IndexOf也可能很有用。例如,如果您的輸入文本包含單詞「Something」(大寫'S'),則使用術語「something」搜索此輸入將使用Contains或vanilla IndexOf都失敗。 但隨着的IndexOf你可以寫這樣的事情
Dim pos1 = String1.IndexOf("something", StringComparison.CurrentCultureIgnoreCase)
Dim pos2 = String2.IndexOf("something else", StringComparison.CurrentCultureIgnoreCase)
這將迫使的IndexOf像他們一樣的字符串處理「東西」和「東西」。
最後,你的問題還不清楚,如果你想檢查丟失的文本只有第二個字符串或兩個字符串,但知道IndexOf返回> = 0如果搜索字符串存在,那麼它應該很簡單,修改if滿足您的需求。
你是什麼意思,它不起作用?你是否建議'String.Contains'或'Not'的實現存在問題? 'String2'的價值是什麼,我懷疑你的情況有所不同。 – Jodrell 2014-12-02 17:47:02
您是否有意忽略從第一次調用'Contains()'? – Panzercrisis 2014-12-02 17:56:41
此外,如果涉及到換行符,您可能會遇到'LF'與'CRLF'(或'LFCR')的問題。 – Panzercrisis 2014-12-02 17:58:19