Xml 如果value属性的内容是字符串列表,如何获取它们并在XSLT中拆分它们?
我有一个xml数据节点:Xml 如果value属性的内容是字符串列表,如何获取它们并在XSLT中拆分它们?,xml,list,xslt,xml-parsing,xslt-1.0,Xml,List,Xslt,Xml Parsing,Xslt 1.0,我有一个xml数据节点: <data field="field_value" value="["value1", "value2"]"> Evacuate - Relocate as instructed in the instruction, Prepare - Make preparations per the instruction </data> 疏散-按照说明重新安置,准备-按照说明进行准备 我想获取value属性(val
<data field="field_value" value="["value1", "value2"]">
Evacuate - Relocate as instructed in the instruction, Prepare - Make preparations per the instruction
</data>
疏散-按照说明重新安置,准备-按照说明进行准备
我想获取value属性(value1和value2)的内容,并将它们拆分为如下节点:
<fieldValue>value1</fieldValue>
<fieldValue>value2</fieldValue>
value1
价值2
现在我试着这样做:
<xsl:if test="data[@field='field_value']">
<xsl:call-template name="split-into-nodes">
<xsl:with-param name="string"><xsl:value-of select="data[@field='field_value']/@value"/>
</xsl:with-param>
<xsl:with-param name="node-name">fieldValue</xsl:with-param>
</xsl:call-template>
</xsl:if>
字段值
但我得到的结果有点奇怪:
<fieldValue>["value1"</fieldValue>
<fieldValue>"value2"]</fieldValue>
[“值1”
“价值2”]
请帮忙…提前谢谢 您的源不是格式良好的XML,将不会被解析 文件的实际内容可能是:
<data field="field_value" value="["value1", "value2"]">
Evacuate - Relocate as instructed in the instruction, Prepare - Make preparations per the instruction
</data>
您的源不是格式良好的XML。我很惊讶这居然会起作用。实际内容可能是
value=“[“value1”、“value2”]”
。在这种情况下,您可以使用translate()
从$string
中删除“
字符和[
和]
。
<xsl:with-param name="string">
<xsl:value-of select="translate(data[@field='field_value']/@value, '"][', '')"/>
</xsl:with-param>