【发布时间】:2015-12-01 09:43:13
【问题描述】:
我想用一个模式来限制一个字符串类型的属性。该属性如下所示:
text(x,y,z)
for 0 <= x,y,z <= 255
因此括号内的 3 个数字必须限制为最大值 255。
有效示例:
text(24,0,255)
无效示例:
text(15,635,5)
我已经试过了,但它不起作用:
<xs:restriction base="xs:string">
<xs:pattern value="text\([0-255],[0-255],[0-255]\)"/>
</xs:restriction>
然后我想到做这样的事情:
<xs:restriction base="xs:string">
<xs:pattern value="text\(1?[0-9][0-9],1?[0-9][0-9],1?[0-9][0-9]\)|text\(2[0-4][0-9],1?[0-9][0-9],1?[0-9][0-9]\)|text\(25[0-5],1?[0-9][0-9],1?[0-9][0-9]\)|..."/>
</xs:restriction>
但是由于这 3 个数字中的每一个都有 3 种可能性,所以会有 27 种组合。
除了限制每个数字并将所有可能性与“或”结合起来之外,还有其他可能将数字限制为字符串类型中的最大值和最小值吗?
【问题讨论】: