regex search in mongodb code example
Example 1: pymongo regex search
# use $regex to find docs that start with case-sensitive letter "obje"
query = { "field": { "$regex": 'obje.*' } }
docs = col.count_documents( query )
print ("query:", query)
print ("$regex using '.___*' -- total:", docs, "\n")
# the query between the ^ and $ char are for finding exact matches
query = { "field": { "$regex": '^ObjectRocket 2$' } }
docs = col.count_documents( query )
print ("query:", query)
print ("$regex using '^___$' -- total:", docs, "\n")
# use $options:'i' to make the query case-insensitive
query = { "field": { "$regex": 'oBjEcT', "$options" :'i' } }
docs = col.count_documents( query )
print ("query:", query)
print ("$regex using $options 'i' -- total:", docs, "\n")
# making Regex query without the '$regex' operator
query = { "field": 'Object Rocket 222' }
docs = col.count_documents( query )
print ("query:", query)
print ("exact match without '$regex' -- total:", docs, "\n")
Example 2: mongodb regex case insensitive
db.collection.find({name:{'$regex' : '^((?!string).)*$', '$options' : 'i'}})
Example 3: mongodb regex
{ : { $regex: /pattern/, $options: '' } }
{ : { $regex: 'pattern', $options: '' } }
{ : { $regex: /pattern/ } }