Nejprve se podívejme na MongoDB:Vyhledávání pomocí regulárního výrazu lze provést definováním regulárního výrazu, jak je vysvětleno zde :
db.users.find({"username": /^a/})
Totéž lze provést v php definováním regulárního výrazu, vysvětluje zde :
$collection->find(array('name'=> array('$regex' => '^a'));
Můžete použít téměř přesně stejnou syntaxi regulárního výrazu s Doctrine MongoDB ODM:
$user = $this->get('doctrine.odm.mongodb.document_manager')
->getRepository('WishbotWebBundle:User')
->findByUsername(array('$regex' => $fname));
Vezměte prosím na vědomí, že sbírka dokumentů se vrací, i když je nalezena pouze jedna. Výše uvedený regulární výraz také odpovídá všem dokumentům, kde uživatelské jméno obsahuje $fname
řetězec kdekoli.
Pokud chcete uživatelská jména, která začínají $fname
, musíte použít '^' . $fname
.