寻找一种模式,以便我的 XSD 可以强制格式
Looking for a pattern so my XSD can force the format
我是新手,但我想在我的 XSD 中设置一个模式,将字符串格式化为 999.999,其中左侧数字必须介于 1 和 999 之间,右侧数字必须介于 1 和 999 之间在 0-999 之间。
如有任何帮助,我们将不胜感激。
您拥有的号码的正则表达式将是
[1-9][0-9]{0,2}\.[0-9]{1,3}
见demo
在 XSD 中,您不需要任何锚点,因为 pattern
属性值是默认锚定的。
"Between" 在这种情况下可以用两种不同的方式来理解,具体取决于您是否需要恰好三位数。
如果每边刚好需要三个:
[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
基数使用正则表达式方面的替代方法是对 [=15= 使用 xsd:totalDigits
、xsd:fractionDigits
和 xsd:minExclusive
等数字方面]基地:
<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>
根据您的要求,这可以更好地控制可接受的内容,尤其是当您的数据基本上是数字时。
我是新手,但我想在我的 XSD 中设置一个模式,将字符串格式化为 999.999,其中左侧数字必须介于 1 和 999 之间,右侧数字必须介于 1 和 999 之间在 0-999 之间。
如有任何帮助,我们将不胜感激。
您拥有的号码的正则表达式将是
[1-9][0-9]{0,2}\.[0-9]{1,3}
见demo
在 XSD 中,您不需要任何锚点,因为 pattern
属性值是默认锚定的。
"Between" 在这种情况下可以用两种不同的方式来理解,具体取决于您是否需要恰好三位数。
如果每边刚好需要三个:
[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
基数使用正则表达式方面的替代方法是对 [=15= 使用 xsd:totalDigits
、xsd:fractionDigits
和 xsd:minExclusive
等数字方面]基地:
<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>
根据您的要求,这可以更好地控制可接受的内容,尤其是当您的数据基本上是数字时。