当前位置 : 主页 > 网页制作 > xml >

xml – XPath – 从字符串中提取数值

来源:互联网 收集:自由互联 发布时间:2021-06-13
Descriptionthis is my value 822880494 this is my value/Description 我是xpath,xml和stylevision的新手,所以这可能是一个基本问题. 我正在使用stylevision 2010和xpath为模式创建sps / xslt. 在上面的节点中,您可以看
<Description>this is my value 822880494 this is my value</Description>

我是xpath,xml和stylevision的新手,所以这可能是一个基本问题.

我正在使用stylevision 2010和xpath为模式创建sps / xslt.

在上面的节点中,您可以看到节点内部有一个数值,我想提取该值并将其转换为我的pdf / html中的链接.问题是我似乎无法提取它.子字符串不是一个选项,因为值的长度和其中数值的位置会有所不同.

有些人可能认为模式组合严重,数值应该在一个单独的节点/属性/ …中我无能为力,因为这个模式是由另一家公司提供的.

提前致谢!

StyleVision 2010似乎支持XSLT 2.0,因此您可以使用2.0样式表并执行类似的操作

<xsl:analyze-string select='$foo' regex='\d+'>
  <xsl:matching-substring>
    <number><xsl:value-of select='.' /></number>
  </xsl:matching-substring>
</xsl:analyze-string>

或者你想用这个号码做什么;带有数字的字符串是< xsl:matching-substring>内的上下文元素.元件.

Newtover的翻译想法(对于XSLT 1.0)看起来像这样:

<xsl:value-of select="translate(., translate(., '0123456789', ''), '')" />

但是如果你的输入包含多个数字,那么只需将它们连接起来.

网友评论