Angularjs 类环回滤波器不区分大小写

Angularjs 类环回滤波器不区分大小写,angularjs,postgresql,loopback,Angularjs,Postgresql,Loopback,如何使用postgresql在环回中筛选不区分大小写的用户。 我真的用了 pattern = new RegExp('.*'+data+'.*', "i") 但不起作用。 我的代码是 searchUsersAppointment(data): void { let cpr = /^\d+$/.test(data); let pattern = new RegExp('.*'+data+'.*', "i"); let query = {}; if(cpr){

如何使用postgresql在环回中筛选不区分大小写的用户。 我真的用了

pattern = new RegExp('.*'+data+'.*', "i")
但不起作用。 我的代码是

searchUsersAppointment(data): void {
    let cpr = /^\d+$/.test(data);
    let pattern = new RegExp('.*'+data+'.*', "i");
    let query = {};
    if(cpr){
        query = {where: {CPR: {like: data} } };
    }else{
        query = {where: {firstName: {like: pattern} } };
    }
    this.patientDetailsApi.find(query).subscribe(searchDetails => {
        this.searchDetails = searchDetails;
    })
}

谁能帮我解决这个问题。

在环回中不区分大小写的搜索不需要使用
Regex

如果您使用的数据库支持ANSI SQL格式,如MySql、PostgreSql,则可以使用以下代码段:

filter.where = {
  name: { 
    ilike: '%'+ search_string +'%'
  }
};
where = {
  name: {
    like: search_string,
    options: "i" 
  }
};

如果您使用的是noSQL数据库(如MongoDb),请使用以下代码段:

filter.where = {
  name: { 
    ilike: '%'+ search_string +'%'
  }
};
where = {
  name: {
    like: search_string,
    options: "i" 
  }
};

如果您使用noSQL数据库,如MongoDb和loopback4,请使用以下代码段:

const pattern = new RegExp('^' + request.search + '.*', "i");
where: { 
   name: { regexp: pattern }
}

@RahulSingh我得到的解决方案更改查询={where:{firstName:{like:pattern}};to query={where:{firstName:{regexp:data+“/i”}};如果我想同时对两个feild进行搜索查询,我该怎么做?例如:FirstName、lastName、middleName@NahidYou可以在where子句中使用OR运算符组合搜索筛选器。