Node.js 就像猫鼬一样

Node.js 就像猫鼬一样,node.js,mongodb,mongoose,nosql,Node.js,Mongodb,Mongoose,Nosql,在mongoose中,使用正则表达式是否是(唯一/最好的)使用的方式,就像使用(如SQL)功能一样 我的例子是: Thing.find({ 名称:新RegExp('^'+req.body.name,“i”) }) .限额(5) .sort(“-rating”) .lean(正确) 行政长官( 功能(错误、事物){ 发送(事物); } ); 因为这是MongoDB中的唯一方法(除了使用有一些限制的a),所以它是最好的方法。我认为只有使用javascript才能实现相同的行为。下面类似的操作可以将l

在mongoose中,使用正则表达式是否是(唯一/最好的)使用
的方式,就像使用
(如SQL)功能一样

我的例子是:

Thing.find({
名称:新RegExp('^'+req.body.name,“i”)
})
.限额(5)
.sort(“-rating”)
.lean(正确)
行政长官(
功能(错误、事物){
发送(事物);
}
);

因为这是MongoDB中的唯一方法(除了使用有一些限制的a),所以它是最好的方法。

我认为只有使用javascript才能实现相同的行为。下面类似的操作可以将
like
转换为
RegExp

(未测试,因此可能无法正常工作。)

function createLikeRegex(query) {
  query = query
    .replace(/[.?*+^$[\]\\(){}|-]/g, '\\$&')
    .replace(/(^|[^\\\])%#/g, '\\$&');

  if (! query.startsWith('%')) {
    query = '^' + query;
  }

  if (! query.endsWith('%')) {
    query += '$';
  }

  return new RegExp(query, 'i');
}