XSLT解析JSON字符串
来源:互联网 发布:奢侈品活动策划 知乎 编辑:程序博客网 时间:2024/06/08 17:07
这两天呗XSL类问题搞的焦头烂额,不过总是解决了问题。
给定一个JSON串怎么进行对其解析呢?串如下:
<Logic>[{"TriggerVal":"10001510","TargetItemNo":"1879","targetCRFNo":null,"targetPageNo":null,"TargetItemDivId":null,"FromCRFNo":null},{"TriggerVal":"10001510","TargetItemNo":"1880","targetCRFNo":null,"targetPageNo":null,"TargetItemDivId":null,"FromCRFNo":null},{"TriggerVal":"10001510","TargetItemNo":"1881","targetCRFNo":null,"targetPageNo":null,"TargetItemDivId":null,"FromCRFNo":null}]</Logic>
我的目的是将TriggerVal和TargetItemNo的值取出来,进行处理。根据以上串的形式我们可以发现,先按找{,然后
再找‘“’与’:‘当我们想要得到TargetItemNo的值,再找到','即可。至于怎么用XSLT找,主要是使用substring-before和substring-after两个函数进行切割,并且递归的调用模板函数(Choice),我们直接上代码,很简单。
<xsl:template name="Choice" xml:space="preserve"><xsl:param name="logic"/><xsl:param name="node"/><xsl:variable name="StatusBRACE" select="substring-after($logic,'{')"/><xsl:variable name="StatusQUOBefore" select="substring-after($StatusBRACE,'"')"/><xsl:variable name="StatusQUOAfter" select="substring-before($StatusQUOBefore,'"')"/><xsl:variable name="StatusCOLON" select="substring-after($StatusQUOBefore,':')"/><xsl:variable name="StatusQUOBefore2" select="substring-after($StatusCOLON,'"')"/><xsl:variable name="StatusQUOAfter2" select="substring-before($StatusQUOBefore2,'"')"/><xsl:variable name="TargetBRACE" select="substring-after($StatusQUOBefore2,',')"/><xsl:variable name="TargetQUOBefore" select="substring-after($TargetBRACE,'"')"/><xsl:variable name="TargetQUOAfter" select="substring-before($TargetQUOBefore,'"')"/><xsl:variable name="TargetCOLON" select="substring-after($TargetQUOBefore,':')"/><xsl:variable name="TargetQUOBefore2" select="substring-after($TargetCOLON,'"')"/><xsl:variable name="TargetQUOAfter2" select="substring-before($TargetQUOBefore2,'"')"/><xsl:if test="substring-after($TargetQUOBefore2, '{') != ''"> <xsl:call-template name="Choice"> <xsl:with-param name="logic" select="$TargetQUOBefore2" /> </xsl:call-template> </xsl:if></xsl:template>
至于中间怎么对数据处理,这里我就不再叙述了
阅读全文
0 0
- XSLT解析JSON字符串
- flex解析json字符串
- jackson解析 json字符串
- java 解析 json 字符串
- java解析json字符串
- json解析字符串
- 解析json字符串
- android解析json字符串
- json字符串解析
- java解析json字符串
- java解析json字符串
- java解析json字符串
- Action解析Json字符串
- java解析json字符串
- jQuery解析Json字符串
- oracle 解析JSON字符串
- SQLServer 解析JSON字符串
- java json字符串解析
- http-------待看
- 第四章 JavaScript 函数
- OpenCV-利用函数inRange进行颜色分割(针对HSV颜色空间)
- 常用正则表达式
- TabLayout 导航条与导航标题文字对齐
- XSLT解析JSON字符串
- Delphi的对象注销方法Destroy和free
- (有密码Access)Access无法启动应用程序,工作组信息文件丢失,或是已被其他用户已独占方式打开
- Spring定时任务的几种实现
- 如何为VMware的多台虚拟机绑定IP地址
- c++ 重载new和delete
- C#的配置文件App.config使用总结
- 关于ubuntu14.04防火墙-ufw
- 第二章、IPC机制