我正在处理一些项目,需要分析所选字符串并验证该字符串是否具有Numeric值和Alphabetic值。如果你有任何想法,请给我一个解决方案。
当字符串$s
可以用作数字时,这就是true()
:
number($s) = number($s)
当$s
字符串仅由拉丁字符组成时,这就是true()
:
string-length(translate($s, $alpha, '')) = 0
其中$alpha是一个包含所有小写字母和大写字母的字符串。
如果字符串$s
至少包含一个字母或数字,则为true:
not(string-length(translate($s, $alphaNum, '')) = string-length($s))
其中$alphaNum是一个包含所有小写字母和大写字母以及所有数字的字符串。
在XPath2.0(XSLT2.0)中,可以使用正则表达式和字符类。
更新:从OP的评论来看,他实际上想测试字符串是否包含字母或数字。
第二个新要求是在每种情况下都将字符串的某个部分存储在变量中。然而,这一要求根本没有定义,只出现在OP评论中给出的两个相互矛盾的例子中。