我正在使用xpaths从XML格式的文件中检索各种数据点。
在某些情况下,我只想提取值的后4位,但是我不知道该怎么做。
我已经测试了该站点上发现的各种子字符串方法,但是没有用。
<TAXPAYER_IDENTIFIERS>
<TAXPAYER_IDENTIFIER SequenceNumber="1">
<TaxpayerIdentifierType>SocialSecurityNumber</TaxpayerIdentifierType>
<TaxpayerIdentifierValue>123456789</TaxpayerIdentifierValue>
</TAXPAYER_IDENTIFIER>
</TAXPAYER_IDENTIFIERS>
答案 0 :(得分:0)
如果当前节点为TaxpayerIdentifierValue,则只需调用substring
并使用string-length
来计算子字符串的起始位置:
substring(., string-length(.) - 3)
从根开始,就做到了
substring(/TAXPAYER_IDENTIFIERS/TAXPAYER_IDENTIFIER/TaxpayerIdentifierValue,
string-length(/TAXPAYER_IDENTIFIERS/TAXPAYER_IDENTIFIER/TaxpayerIdentifierValue) - 3)
答案 1 :(得分:0)
在某些情况下,我只想提取值的后4位,但是我不知道该怎么做。
检索值的后4位,例如TaxpayerIdentifierValue
,您可以使用以下XPath-1.0表达式:
substring(/TAXPAYER_IDENTIFIERS/TAXPAYER_IDENTIFIER/TaxpayerIdentifierValue, string-length(/TAXPAYER_IDENTIFIERS/TAXPAYER_IDENTIFIER/TaxpayerIdentifierValue) - 4 + 1, 4)
其输出是:
6789
答案 2 :(得分:0)