Regex 列表中不同元素的mongodb正则表达式

Regex 列表中不同元素的mongodb正则表达式,regex,mongodb,Regex,Mongodb,我有一个关键字数组,希望使用regex查找包含这些关键字的文档。因此,我目前使用的是: for (var idx=0;idx<tags_list.length;idx++){ db.ht_twitter.find({"tweettext": {$regex: ".*[^@]"+tags_list[idx]+".*"}}).forEach(function(x){db.homonyms.save(x)}) } for(var idx=0;idx您可以在正则表达式中尝试(OR)运算符 例如

我有一个关键字数组,希望使用regex查找包含这些关键字的文档。因此,我目前使用的是:

for (var idx=0;idx<tags_list.length;idx++){

db.ht_twitter.find({"tweettext": {$regex: ".*[^@]"+tags_list[idx]+".*"}}).forEach(function(x){db.homonyms.save(x)})
}

for(var idx=0;idx您可以在正则表达式中尝试
(OR)运算符

例如,您可以将每个关键字存储在一个用
|
分隔的字符串中,如下所示:

KeyString=“keyW1 | keyW2 | keyW3”


然后试着像这样匹配你的正则表达式:
{$regex:“.*[^@]”+KeyString+“*”}

你可以在正则表达式中尝试
(OR)操作符。例如,你可以将每个关键字存储在一个用
分隔的字符串中,就像这样:
KeyString=“keyW1 | keyW2 | keyW3
然后尝试如下匹配您的正则表达式:
{$regex:*[^@]“+KeyString+”*”}
如果此处的有效注释不够清晰,那么您可能应该显示您实际需要针对的内容。请注意,MongoDB中的任何正则表达式都不会非常有效,除非您能够将其锚定到字符串的开头。但是一个查询总是比
N
查询好。@Plootox感谢您的输入。似乎效率更高。@Neil Lunn我所要做的就是查找在用户名前缺少
@
符号的情况。@Moj很高兴我能提供帮助。我会将其作为答案发布,这样您就可以结束您的问题了