मुझे लगता है कि आप सही कह रहे हैं कि पहले और आखिरी वर्णों की जांच करना उद्धरण शायद सबसे आसान है। हालांकि नेवला खुद ऐसा नहीं कर सकता। मेरा सुझाव है कि पहले से प्रश्न तैयार करें और उपयुक्त ढूंढें . का चयन करें विधि।
हम $regex
. का भी उपयोग कर सकते हैं संग्रह में प्रत्येक दस्तावेज़ की 'कीवर्ड' संपत्ति के विरुद्ध दिए गए रेगुलर एक्सप्रेशन को निष्पादित करने के लिए ऑपरेटर।
var userInput = '"Apple"';
var term = userInput.trim();
var caseInsensitive = true; // = some user input?
var isExactTerm = (function() {
var firstChar = term[0];
var lastChar = term[term.length - 1];
return (firstChar === '"' && lastChar === '"');
}();
if(isExactTerm) {
// Remove quotes from the query
term = term.substr(1, str.length - 1);
}
var method = (isExactTerm) ? 'findOne': 'find';
var regexFlags = (caseInsensitive) ? 'i' : '';
var query = (isExactTerm) ? term : {$regex: new RegExp(term, regexFlags)};
Model[method]({
keyword: query
}).exec().then(function(result) {
// do stuff with `result`
}, function(err) {
// handle `err`
});