C# 为什么使用JSON路径表达式*&引用;不会产生任何结果(Json.NET)
我正在使用Json.NET。对于以下JSON:C# 为什么使用JSON路径表达式*&引用;不会产生任何结果(Json.NET),c#,json,json.net,C#,Json,Json.net,我正在使用Json.NET。对于以下JSON: var token = JToken.Parse("[\"v\"]"); 我运行两个表达式: var notFound = token.SelectTokens("*"); var found = token.SelectTokens("[*]"); 出于某种原因,第一个没有找到任何令牌,但第二个找到了。我已经使用在线工具检查了该行为,它还证明了在这种情况下,“*”的行为应该与“[*]”的行为相同 Json.NET是.NET中最流行、使用最广泛
var token = JToken.Parse("[\"v\"]");
我运行两个表达式:
var notFound = token.SelectTokens("*");
var found = token.SelectTokens("[*]");
出于某种原因,第一个没有找到任何令牌,但第二个找到了。我已经使用在线工具检查了该行为,它还证明了在这种情况下,“*”
的行为应该与“[*]”
的行为相同
Json.NET是.NET中最流行、使用最广泛的框架。因此,我想这种行为是有原因的。。。什么?试试/*
如果假定JSONPath为XPath建模,那么您需要指定与根相关的内容——我将把上面的代码解释为“根对象下的任何类型的元素”——也就是说,它将在数组的“下”找到字符串 试试/*
如果假定JSONPath为XPath建模,那么您需要指定与根相关的内容——我将把上面的代码解释为“根对象下的任何类型的元素”——也就是说,它将在数组的“下”找到字符串 它不是正则表达式,而是Json路径。 那就试试看
它会找到更多的令牌-2而不是一个(数组及其元素)它不是正则表达式,而是Json路径。 那就试试看
它找到更多的令牌-2而不是一个(数组及其元素)
$..*
返回JSON结构的所有成员。$..*
返回JSON结构的所有成员。JSON路径中的根是$
。因此,我希望$.*
匹配根目录下的所有子项。但事实并非如此。$*
也没有。但是,$[*]
再次起作用…:/JSON路径中的根是$
。因此,我希望$.*
匹配根目录下的所有子项。但事实并非如此。$*
也没有。但是,$[*]
再次起作用…:/
$..*