是否可以定义一种XPath选择器,该选择器对我从中选择的JSON中的多个值使用条件运算?
考虑以下示例JSON:
{
"values": [
//previous entries
{
"value" : "50",
"date" : "29-11-2018"
}, {
"value" : "100",
"date" : "30-11-2018"
}, {
"value" : "150",
"date" : "1-12-2018"
},
//following entries
]
}
说,我只想选择任何月份的最后一天的值(出于示例的原因,请忽略从Dec到Jan的值)。我的想法是如果当月t1-当月t0> 0
选择值是否存在使用XPath计算此条件的语法?
答案 0 :(得分:0)
根据此链接,XPath是
[...]一种用于处理XML文档各部分的语言,旨在供XSLT和XPointer一起使用。
但是您想解决JSON格式...
幸运的是,有一个const payload = new HttpParams();
payload.set('username', username);
payload.set('password', password);
this.http.post(url, payload);
库在CodeProject:JUST - JSON Under Simple Transformation上实现了XPath变体,这是JSON的XSLT版本,当然也包含XPath功能。
JUST代表简单转换下的JSON.XSLT是使用简单转换语言来转换XML文档的一种非常流行的方式。
现在越来越多的应用程序将JSON用作数据格式,因为它比XML更为简单且不那么庞大。
但是,没有很简单的方法来转换JSON文档。
我已经在.NET中创建了一个库,该库可以使用非常简单的转换语言来转换JSON文档。
这是尝试为JSON创建XSLT并行。
因此,此软件包的一部分实现了XPath-1.0(?)功能。
隔离此部分,或使用整个程序包。
我的想法是选择值
C#
一种用于(部分)解决方案的方法可能看起来像这样(我无法测试并完成此操作,但您应该明白这一点。):
if month-in-date t1 - month-in-date t0 > 0