在 Jquery 中寻找关键短语的简单方法?

Simple Way of Looking for Key Phrases in Jquery?

我已经设置了一种从实时聊天客户端检索消息的方法。我想获取这些消息(很多文本)并找出这些消息中是否包含关键短语。如果它们包含关键短语,我将简单地向计数变量加 1。

目前我是这样做的("good"、"yes"、"nice"是关键词)

for (var i = 0; i < data.msgs.length; i++)
{
    str = data.msgs[i].msg.toLowerCase();
    if (str.search("good") != -1 || str.search("yes") != -1 || str.search("nice") != -1)
    {
         count = count + 1;
    }
}

这个方法可行,但不是很漂亮。我计划添加大约 100 个不同的关键短语,很容易看出这会变得很愚蠢。此外,添加新的关键短语既烦人又麻烦。

我想知道是否有更好的方法来制作某种我可以从中搜索匹配项的关键短语数据库。最好是可以轻松添加和删除短语的。

谢谢。

var keys = ['good', 'yes', 'nice'];
for (var i = 0; i < data.msgs.length; i++)
{
    str = data.msgs[i].msg.toLowerCase();
    for(var j=0; j < keys.length; j++){
         if(str.indexOf(keys[j]) !== -1){
            count++;
            //could also return here if you want to break the function after a find
          }
    }
}

您还可以从 JSON 文件加载 "keys" 并解析它。