如何在 mongo 中编写与以下内容等效的内容?在检查条件之前,我需要忽略特定列中的一些字符(空格、连字符)。为了举一个 mysql 的例子,我只是删除了空格。
select * from TABLE
where REPLACE('name', ' ', '') = 'TEST'
因此,如果名称列具有“T E S T”,则应该匹配。
最佳答案
您可以尝试在查询中使用 $where
运算符:
{$where: "this.name.replace(/[ -]/g,'') == 'TEST'"}
或者:
{$where: "this.name.match(/T[ -]*E[ -]*S[ -]*T/)"}
或直接使用$regex
:
{name: /T[ -]*E[ -]*S[ -]*T/}
关于mongodb - 忽略匹配条件之前的特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24486882/