使用具有非常基本的自然语言识别功能的 Visual Basic.NET 控制台应用程序 - 它只需要处理特定的单词字段,因此并不难。我把逻辑都写在纸上了,但我遇到了一个问题。
我希望应用程序检查用户输入是否仅包含有效单词。
当用户输入内容时,我使用一个函数将其缩减为仅包含字母数字字符,并使用 string.split 方法创建一个包含用户输入的单独单词的数组。我现在想做的是将输入数组与另一个数组(完整的有效单词集)进行比较,如果输入数组仅包含有效单词数组中存在的元素,则返回错误消息。
例如,如果所有有效词都是“ALPHA”、“BETA”和“GAMMA”。 当用户输入类似“ALPHA BETA”的内容时,程序将接受输入。 如果输入是“APPLES”,那么它将返回一条错误消息,因为字符串 APPLE 不是有效单词数组的成员。
我希望我已经把我的问题说清楚了,任何人都可以帮忙。谢谢。
最佳答案
也许您正在寻找类似 All 的内容()-方法,检查集合中的每个元素是否满足条件。考虑以下示例:
Dim validWords = {"ALPHA", "BETA", "GAMMA"}
Dim thisIsNotValid = {"ALPHA", "APPLES"}.All(Function(word) validWords.Contains(word))
Dim thisIsValid = {"ALPHA", "BETA"}.All(Function(word) validWords.Contains(word))
thisIsNotValid
的计算结果为 False
,thisIsValid
的计算结果为 True
。
关于vb.net - 要检查数组是否仅包含来自另一个数组的元素,VB.NET,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9909063/