sql >> Databáze >  >> NoSQL >> MongoDB

Jak najít podřetězec v poli v Mongodb

Místo toho:

db.database.find({A: {$regex: '/^*(abc def)*$/''}})

Měli byste udělat toto:

db.database.find({A: /abc def/i })

^* není ve skutečnosti platná syntaxe, protože ^ a $ jsou kotvy a ne něco, co je opakovatelné. Tady jsi asi myslel ^.*. Ale není potřeba ^.*, protože to jednoduše znamená "Všechno až po následující znak" a (abc def)* znamená "0 nebo vícekrát "abc def", ale musí to být na konci řetězce, kvůli vašemu $. „i“ na konci je proto, aby se nerozlišovaly malá a velká písmena.



  1. Údržba sad replik MongoDB v cloudu pomocí Ansible

  2. Jak provedu dotazy na Mongodb bez ohledu na velikost písmen?

  3. 5 způsobů, jak získat měsíc z data v MongoDB

  4. Škálovatelný způsob protokolování dat požadavku stránky z aplikace PHP?