gpt4 book ai didi

c# - 正则表达式匹配 MongoDB 中字符串中单词的开头

转载 作者:可可西里 更新时间:2023-11-01 10:45:02 25 4
gpt4 key购买 nike

在 MongoDB 查询中,我试图匹配具有字符串字段的记录,该字段在该字符串中任何单词的开头包含搜索词。正则表达式在 regex101.com 上正常工作.

/\bCh/i

匹配值:

Chia seeds

i like to eat Chia seeds

i like to eat chia seeds

但是,当我在 MongoDB 查询中尝试相同的操作时,我没有得到匹配的记录。

{
"TenantNames" : /(\bSmith)/i
}

我也试过 /(\bSmith.*)/i 和 /(\bSmith.*\b)/i 但它们都没有返回匹配的记录.我错过了什么?

我正在使用 C# 驱动程序来构建查询。

最佳答案

不确定,可能需要的输出是什么,我猜您可能正在尝试设计类似于以下的表达式:

.*\bChia\b.*

或:

.*\bSmith\b.*

也不确定 i 标志在 mongodb 中是如何工作的。


基于 this doc ,也许我们可能还想为此任务使用一些不同的命令,例如:

{ name: { $regex: /.*\bSmith\b.*/, $options: 'i', $nin: [ 'TenantNames' ] } }

表达式在 this demo 的右上面板中进行了解释, 如果你想探索/简化/修改它,在this link ,如果愿意,您可以逐步观察它如何与一些示例输入匹配。

引用

MongoDB C# Query for 'Like' on string

关于c# - 正则表达式匹配 MongoDB 中字符串中单词的开头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56996742/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com