MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

MongoDB:comment trouver des documents en ignorant la casse, les accents et le pourcentage comme la logique (%)

Cela fonctionne pour moi !

Remplacez simplement les voyelles par une expression régulière qui contient des voyelles accentuées. Vous pouvez également utiliser $options: 'i' pour éviter la casse.

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' } });