Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
存在正则表达式时JSON解析失败_Json_Mongodb_Json.net - Fatal编程技术网

存在正则表达式时JSON解析失败

存在正则表达式时JSON解析失败,json,mongodb,json.net,Json,Mongodb,Json.net,我正在尝试将json中的mongodb查询解析为dictionary,JObject.parse抛出异常 JSON字符串如下所示 { vendor: "xyx", product: { $in : [ /prod1/i, /prod2/i, /prod3/i ] } } 例外情况是消息为 分析注释时出错。期望值:*,得到p。路径“产品$in”,第1行,位置50 看起来你不是想说JSON,而是说MongoDB,不是吗 对于MongoDB查询,您需要执行以下操作: { vendor: "xyx"

我正在尝试将json中的mongodb查询解析为dictionary,JObject.parse抛出异常

JSON字符串如下所示

{ vendor: "xyx", product: { $in : [ /prod1/i, /prod2/i, /prod3/i ] } }
例外情况是消息为

分析注释时出错。期望值:*,得到p。路径“产品$in”,第1行,位置50


看起来你不是想说JSON,而是说MongoDB,不是吗

对于MongoDB查询,您需要执行以下操作:

 { vendor: "xyx", product: { $in : [ Pattern.compile(/prod1/i),  Pattern.compile(/prod2/i),  Pattern.compile(/prod3/i) ] } }

JSON不支持正则表达式,但您可以将JSON字符串改为使用查询运算符语法:

{ vendor: "xyx", product: { $in: [
    {$regex: "prod1", $options: "i"},
    {$regex: "prod2", $options: "i"},
    {$regex: "prod3", $options: "i"} 
] } }
当然,这一切都是一脉相承的。要成为有效的JSON,所有的键都需要被引用,但是
JObject.Parse
可能允许省略它们,因为这听起来不像是给你带来麻烦