输入 JSON :
[
{"Activity":"yes","SBNumber":"123"},
{"Activity":"yes","SB#":"123"}
]
JXPath 表达式:
//works : returns "123"
JXPathContext.newContext(input).getValue("//*/SBNumber")
//fails: throwing JXPathInvalidSyntaxException
JXPathContext.newContext(input).getValue("//*/SB#")
我如何转义 # 以从 SB# 检索值?
失败的尝试包括
JXPathContext.newContext(input).getValue("//*/SB\\#")
JXPathContext.newContext(input).getValue("//*/SB[#]")
JXPathContext.newContext(input).getValue("//*/SB*")
ETC..
但是,我可以从下面检索节点
JXPathContext.newContext(input).getValue("//*/*[contains(.,'SB#')]")
但它只是对父节点的引用:-(
任何可能的解决方案/替代方案都会有所帮助.. tx