Vb.net 使检查字符串不区分大小写
我正在制作一个程序,用户在文本框中输入一个项目,程序将检查该项目是否在字符串中。这是我目前的代码:Vb.net 使检查字符串不区分大小写,vb.net,Vb.net,我正在制作一个程序,用户在文本框中输入一个项目,程序将检查该项目是否在字符串中。这是我目前的代码: Try Dim Request As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create("https://www.dropbox.com/s/2l37j6v0ofsenus/Foods.txt?dl=1") Dim Response As System.Net.HttpWebRespo
Try
Dim Request As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create("https://www.dropbox.com/s/2l37j6v0ofsenus/Foods.txt?dl=1")
Dim Response As System.Net.HttpWebResponse = Request.GetResponse()
Dim sr As System.IO.StreamReader = New System.IO.StreamReader(Response.GetResponseStream)
Dim Foods As String = sr.ReadToEnd()
If Foods.Contains(TXTItem1.Text) Then
Dim Substring As String = Foods.Split(TXTItem1.Text)(1)
Dim SubString1 As String = Substring.Split("-")(1)
Dim SPValue As String = SubString1.Split(vbNewLine)(0)
MsgBox("That item is worth " + SPValue + " SmartPoints!", info)
Else
MsgBox("Item is not found in our list!", critical)
End If
Catch ex As Exception
MsgBox("Error")
End Try
我想让它在检查字符串时不区分大小写。因此,如果用户输入“eggs”并且字符串包含“eggs”,那么即使是小写,它也会执行该函数。我该怎么做?谢谢 中@jacob-h引用的链接问题已经有了您问题的答案,但我更喜欢在这种情况下使用扩展方法 这是我已经使用了一段时间的扩展方法版本。将新模块添加到项目中(或使用现有模块,如果您认为合适),然后将此扩展方法添加到项目中:
<Runtime.CompilerServices.Extension>
Public Function ContainsIgnoreCase(ByVal s As String, ByVal value As String)
Return s.IndexOf(value, StringComparison.OrdinalIgnoreCase) >= 0
End Function
如果您将要测试的字符串转换为小写,并且将要测试的字符串转换为小写,那么就不再考虑大小写了
有一些函数可以为您做到这一点,但它们背后的逻辑始终是相同的。。。无大小写比较要求在进行比较之前将两个数据段转换为全小写(或全大写)。我这应该足够回答这个问题:还有更多关于如何在这个MSDN链接上使用indexof的例子:正如YouTube上解释的那样,这种想法在某些文化中是错误的。(最好全部观看,但关于文本的部分大约在12:20开始。)
If Foods.ContainsIgnoreCase(TXTItem1.Text) Then
' Do your thing.
End If