title: Multiple $regex using $and in MongoDB
body: <p>I have some collection with the next records:</p>
  
  <pre><code>{
      "_id" : ObjectId("52b18fb2a21351b2bb29dfc7"),
      "title" : "aaa"
  }
  {
      "_id" : ObjectId("52b18fd0d17d7f69e078f7b7"),
      "title" : "bbb"
  }
  {
      "_id" : ObjectId("52b18fd3d17d7f69e078f7b8"),
      "title" : "ccc"
  }
  </code></pre>
  
  <p>Next query gives as a result 1 records (with title="aaa") as we expected:</p>
  
  <pre><code>db.test.find({
       {title:{$regex:'aaa'}}
  })
  </code></pre>
  
  <p>But when we use complex condition for $and we got something unexpected:</p>
  
  <pre><code>db.test.find({
      $and: [
          {title:{$regex:'aaa'}},
          {title:{$regex:'bbb'}}
      ]
  })
  </code></pre>
  
  <p>I need query exactly in this case because I'm going to use selection with stop-words, for example:</p>
  
  <pre><code>db.test.find({
      $and: [
          {title:{$regex:'aaa'}},
          {title:{$regex:'bbb'}},
          {title:{$not:/bbb/i}},
      ]
  })
  </code></pre>
  
  <p>Using query that above, I expecting only one field in result (with title="aaa").</p>
  
  <p>I have idea how to solve this issue using aggregate, but I hope there is another way how to solve it.</p>
  
  <p>Thanks!</p>