sql >> Databasteknik >  >> NoSQL >> MongoDB

MongoDB:hur man hittar dokument som ignorerar skiftlägeskänslighet, accenter och procent som logik (%)

Det här fungerar för mig!

Byt bara ut vokaler med ett regex som innehåller accentervokaler. Dessutom kan du använda $options: 'i' för att undvika skiftlägeskänslighet.

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


  1. Få unix tidsstämpel på några sekunder från MongoDB ISODate under aggregering

  2. Installera Memcached på Ubuntu 16.04/18.04 med Nginx och PHP-7.3

  3. Uppdatera samma egenskap för varje dokument i en mongoDb-samling med olika värden

  4. MongoDB sammanlagt returräkning på 0 om inga dokument