MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

MongoDB:como encontrar documentos ignorando maiúsculas e minúsculas, acentos e porcentagem como lógica (%)


Isso funciona para mim!

Basta substituir as vogais por uma regex que contenha vogais com acentos. Além disso, pode usar $options: 'i' para evitar maiúsculas e minúsculas.
function diacriticSensitiveRegex(string = '') {
         return string.replace(/a/g, '[a,á,à,ä]')
            .replace(/e/g, '[e,é,ë]')
            .replace(/i/g, '[i,í,ï]')
            .replace(/o/g, '[o,ó,ö,ò]')
            .replace(/u/g, '[u,ü,ú,ù]');
    }

find ({ name: { $regex: diacriticSensitiveRegex('pala'), $options: 'i' } });