我是新手,但我在XSD中设置一个模式,格式为999.999,左侧数字必须介于1和999之间,右侧数字介于0-999之间。
任何帮助,将不胜感激。
在这种情况下,“之间”可以用两种不同的方式理解,具体取决于您是否需要正好三位数。
如果每侧只需要三个:
[1-9][0-9]{2}\.[0-9]{3}
如果您只需要一个介于1/0和999之间的数字:
[1-9][0-9]{0,2}\.[0-9]{1,3}
说明:
[0-9]
匹配任何数字,[1-9]
匹配除零之外的任何数字。x{n}
匹配x
n次,x{n,m}
匹配x
n次和m次。\.
匹配一个字面点。对xsd:string
基础使用正则表达式方面的替代方法是使用xsd:totalDigits
,xsd:fractionDigits
和xsd:minExclusive
等数字方面对xsd:decimal
基数:
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" >
<xsd:element name="x">
<xsd:simpleType>
<xsd:restriction base="xsd:decimal">
<xsd:totalDigits value="6"/>
<xsd:fractionDigits value="3"/>
<xsd:minInclusive value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:schema>
根据您的要求,这可以更好地控制可接受的内容,特别是如果您的数据基本上是数字的。