MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Pymongo Regex $wszystkie wielokrotne wyszukiwane hasła

Tworzysz ciąg znaków w pętli for, a nie listę re.compile przedmioty. Chcesz:

collected_x = []                            # Initialize an empty list

for x in input:                             # Iterate over input
  collected_x.append(re.compile(x))         # Append re.compile object to list

collected_x_cut = collected_x[:-2]          # Slice the list outside the loop

cursor = db.collection.find({"key": {"$all": collected_x_cut}})

Prostym podejściem byłoby użycie map aby zbudować listę:

collected = map(re.compile, input)[:-2]
db.collection.find({"key": {"$all": collected}})

Lub list comprehension :

collected = [re.compile(x) for x in input][:-2]
db.collection.find({"key": {"$all": collected}})



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Czy istnieje sposób na "ładne" wydrukowanie danych wyjściowych powłoki MongoDB do pliku?

  2. Odpowiedź mongodb objectDB w Jersey API-REST

  3. Meteor — Dlaczego powinienem używać this.userId zamiast Meteor.userId(), gdy tylko jest to możliwe?

  4. Czy istnieje sposób na automatyczne tworzenie kodeków Mongo?

  5. Jak skutecznie przekonwertować bson na json za pomocą mongo-go-driver?