带有或在Java-mongoDB中的正则表达式

带有或在Java-mongoDB中的正则表达式,java,regex,mongodb,Java,Regex,Mongodb,如何创建以下查询: mongoDB的java驱动程序中有“ABC”或“DFG”这样的名称吗 我知道,对于创建不带“或”的正则表达式,我是这样做的: BasicDBObject regexQuery = new BasicDBObject(); regexQuery.put("name", new BasicDBObject("$regex", "ABC")); 正常的|操作符在mongo上工作 这应该做到: BasicDBObject regexQuery = new B

如何创建以下查询:

mongoDB的java驱动程序中有“ABC”或“DFG”这样的名称吗

我知道,对于创建不带“或”的正则表达式,我是这样做的:

  BasicDBObject regexQuery = new BasicDBObject();
  regexQuery.put("name",
       new BasicDBObject("$regex", "ABC"));

正常的|操作符在mongo上工作

这应该做到:

BasicDBObject regexQuery = new BasicDBObject();
regexQuery.put("name",
       new BasicDBObject("$regex", "ABC\\|DFG"));
如果在mongo shell上尝试:

db.collection.find({name:/ABC|DFG/}).pretty()

还可以使用Pattern.compile(“ABC\\\ DFG”)