Arrays 检查richtextbox是否包含vb中字符串数组中的字符串

Arrays 检查richtextbox是否包含vb中字符串数组中的字符串,arrays,vb.net,string,Arrays,Vb.net,String,我不知道该写什么来代替???如果您想检查RichTextBox是否包含这些单词中的任何一个作为完整的单词,例如,这是word1将匹配word1,但这是tword12将不匹配,您需要决定如何将RichTextBox的内容划分为单词。最简单的方法是使用字符串拆分和空格拆分,但如果有标点符号,这可能无法满足您的需要 下面的代码使用这个简单的拆分,并检查关键字数组中是否出现任何单词。RichTextBox的内容将转换为小写,以匹配关键字的大小写 Dim keywords() as string = {"

我不知道该写什么来代替???

如果您想检查RichTextBox是否包含这些单词中的任何一个作为完整的单词,例如,这是word1将匹配word1,但这是tword12将不匹配,您需要决定如何将RichTextBox的内容划分为单词。最简单的方法是使用字符串拆分和空格拆分,但如果有标点符号,这可能无法满足您的需要

下面的代码使用这个简单的拆分,并检查关键字数组中是否出现任何单词。RichTextBox的内容将转换为小写,以匹配关键字的大小写

Dim keywords() as string = {"word1", "word2", "word3"}
If Richtextbox1.text.contains(???,StringComparison.CurrentCultureIgnoreCase) Then
End if
如果您不关心关键字是否显示为完整的单词,您可以这样检查:

Dim keywords() as string = {"word1", "word2", "word3"}
Dim words() As String = RichTextBox1.Text.ToLower.Split({" "c}, StringSplitOptions.RemoveEmptyEntries)
If words.Count(Function(w) keywords.Contains(w)) > 0 Then
    'at least one word was found
End If

如果要使用contains,则必须循环集合中的所有关键字并逐个检查它们

Dim keywords() as string = {"word1", "word2", "word3"}
If keywords.Count(Function(w) RichTextBox1.Text.ToLower.Contains(w)) > 0 Then
    'at least one string from keywords was found
End If
Dim keywords() as string = {"word1", "word2", "word3"}

For Each keyword In keywords
    If Richtextbox1.text.contains(keyword,StringComparison.CurrentCultureIgnoreCase) Then
    End if
End For