gpt4 book ai didi

xslt - 是否有 "elegant"方法来测试属性值是否以字母开头?

转载 作者:行者123 更新时间:2023-12-03 15:23:30 25 4
gpt4 key购买 nike

我需要测试属性值是否以字母开头。如果不是,我会在它前面加上“ID_”,这样它就会是一个有效的 id 类型的属性值。
我目前有以下内容(测试值不以数字开头 - 我知道这些属性值只会以字母或数字开头),但我希望有一种更优雅的方式:

<xsl:if test="not(starts-with(@value, '1')) and not(starts-with(@value, '2')) and not(starts-with(@value, '3')) and not(starts-with(@value, '4')) and not(starts-with(@value, '5')) and not(starts-with(@value, '6')) and not(starts-with(@value, '7')) and not(starts-with(@value, '8')) and not(starts-with(@value, '9')) and not(starts-with(@value, '0')) ">

我正在使用 XSLT 1.0。
提前致谢。

最佳答案

使用 :

not(number(substring(@value,1,1)) = number(substring(@value,1,1)) )

或使用 :
not(contains('0123456789', substring(@value,1,1)))

最后,这可能是验证您的条件的最短 XPath 1.0 表达式 :
not(number(substring(@value, 1, 1)+1))

关于xslt - 是否有 "elegant"方法来测试属性值是否以字母开头?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5984831/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com