我正在尝试检查关键字的字符串,如果该单词存在,则从字典中获取值。当关键字是多词短语时,问题就存在了。
所以我有一本字典:
Dictionary<string, string> d = new Dictionary<string, string>(StringComparer.InvariantCultureIgnoreCase);
d.Add("keyword1", "D2");
d.Add("keyword2", "D3");
d.Add("keyword3", "D4");
d.Add("keyword4", "D4");
d.Add("keyword5", "D5");
d.Add("key word six", "D6");
我有一个字符串,它可能如下所示,但将是一个随机句子:
string errormessage = "This is an error regarding Key Word Six";
我目前正在使用以下内容检查错误消息并查看字典中是否出现任何单词:
string code = null;
string theDcode = null;
foreach (string word in errormessage.Split(' '))
{
if (d.TryGetValue(word, out theDcode))
{
code = theDcode;
}
}
问题是我无法搜索字符串“关键字六”,因为我正在逐字读取字符串,而 foreach 循环会分别查看每个单词。这适用于单个单词的关键字。如何处理检查多字关键字?