Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Jquery中查找关键短语的简单方法?_Jquery_Key_Match_Phrases - Fatal编程技术网

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

在Jquery中查找关键短语的简单方法?,jquery,key,match,phrases,Jquery,Key,Match,Phrases,我已经建立了一种从实时聊天客户端检索消息的方法。我想记下这些信息(大量文本),看看其中是否有关键短语。如果它们包含一个关键短语,我只需在count变量中添加1 目前我是这样做的(“好”、“是”和“好”是关键短语) for(var i=0;i

我已经建立了一种从实时聊天客户端检索消息的方法。我想记下这些信息(大量文本),看看其中是否有关键短语。如果它们包含一个关键短语,我只需在count变量中添加1

目前我是这样做的(“好”、“是”和“好”是关键短语)

for(var i=0;i
这种方法是有效的,但不是很漂亮。我计划添加大约100个不同的关键短语,很容易看出这会变得愚蠢。此外,添加新的关键短语也很烦人和麻烦

我想知道是否有更好的方法制作一些关键短语的数据库,我可以从中搜索匹配项。最好是能够方便地添加和删除短语

谢谢。

var-keys=['good','yes','nice'];
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
          }
    }
}
对于(var i=0;i

您还可以从JSON文件加载“密钥”并对其进行解析。

这几乎可以正常工作。当我使用str.search(“good”)时,它会在整个消息中搜索文本“good”。因此,如果消息是“我很好”,它将返回“true”(这里true的意思不是否定的)。按照您的方式,只有当整个消息都是短语时,才会返回true。所以只有“good”才会返回true。抱歉,意外提前发送
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
          }
    }
}