To działa dla mnie!
Wystarczy zastąpić samogłoski wyrażeniem regularnym, które zawiera samogłoski akcentujące. Dodatkowo można użyć $options: 'i'
aby uniknąć rozróżniania wielkości liter.
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' } });