XML模式(XSD)1.0 xs:模式正则表达式将4位数字作为字符串匹配?

问题描述:

如何匹配特定的数字序列,就像它是XML Schema中的字符串xs:patternXML模式(XSD)1.0 xs:模式正则表达式将4位数字作为字符串匹配?

说我有包含任意10个字符的字符串像

<string>12345678990</string>

一些标签,我想排除所有标签任意序列的像1234特定的黑名单,2435,``9587​​`,或者其他一些。

如何解决特定的4位子字符串否定并将其添加到<string>的内容模型的xs:pattern限制列表中?

我不认为有任何实际的符合XSD的正则表达式将匹配除了包含“1234”作为子字符串的所有字符串。 (因此,禁止几个子串的更具挑战性的要求也不能满足)。

这是一个用于XSD 1.1断言,例如

<xs:assert test="not(contains($value, '1234') or contains($value, '9999'))"/>