【问题标题】:Check if a particular string ends with some text检查特定字符串是否以某些文本结尾
【发布时间】:2016-10-25 10:01:55
【问题描述】:

我正在尝试在我的 mongo 查询中使用 regex,并且我想根据以下条件进行搜索:mongo 应该返回所有 name 键以特定文本结尾的结果。

例如:- 输入文本mob,那么我所有的结果都应该有他们的name键以mob结尾。

到目前为止我已经尝试过了

Collection.find({name: new RegExp("$'"+titleStr, 'i')}).exec()

但我没有得到任何结果。

【问题讨论】:

    标签: regex mongodb


    【解决方案1】:

    Mongodb 有regex 运算符关键字用于使用正则表达式进行搜索。试试这个

    Collection.find( { name: { $regex: /titleStr$/, $options: 'i' } } ).exec()
    

    【讨论】:

    • 实际上你的回答是部分正确的,根据我的需要,表达式应该看起来像Collection.find( { name: { $regex: /titleStr$/, $options: 'i' } } ).exec() 不管怎样,thanx
    • 我只是给你一个想法,在你的查询中使用regex
    • 谢谢哥们!其实我已经习惯了,我只需要一个正确的表达方式
    【解决方案2】:

    当我用

    替换代码的正则表达式部分时,我得到了想要的结果
    Collection.find({name: new RegExp(titleStr + '$', 'i')}).exec()
    

    【讨论】:

      【解决方案3】:

      MongoDB 有一个 $regex 运算符 https://docs.mongodb.com/manual/reference/operator/query/regex/

      我想事情应该很简单

      【讨论】:

        最近更新 更多