从MongoDB中删除与“本文”匹配的条目
好的,我已经search,search,我还没有find一个方法来使这项工作。 这是我有:
我正在在node / express / socketio等聊天应用程序工作。我试图创build一个“清除”function,从指定的input删除从MongoDB的某个聊天消息。 例如:
/clear badword /clear heck /clear Barbara Streisand
我正在努力创build一个合适的RegEx,它实际上会查找包含指定文本的条目。
这是我目前使用的:
Chat.remove({"msg":{$regex: new RegExp('.*' + myInput, 'i')}});
它似乎没有find任何东西。 注意:指定的文本可以在聊天消息的任何地方,所以我需要能够说:
如果<this text>
存在于密钥的任何位置,请将其删除。
我一直在查看RegEx文件几个小时,我不能使任何工作。 任何人都可以指向正确的方向吗?
你需要为你的remove
调用提供一个callback,或者调用exec
返回的查询对象来实际执行remove操作。
所以:
Chat.remove({"msg":{$regex: new RegExp('.*' + myInput, 'i')}}, (err) => {...});
要么
Chat.remove({"msg":{$regex: new RegExp('.*' + myInput, 'i')}}).exec();
关于你的正则expression式的一个注释:你不需要添加'.*'
前缀。