如何检查值是否以......开头?

时间:2014-03-11 02:04:01

标签: xml xsd

我想检查值是否以“TLR”开头。我试过了:

<xs:element name="VoucherCode" maxOccurs="10" minOccurs="1">
    <xs:simpleType>
        <xs:restriction base="xs:string">
            <xs:pattern value="^TLR" />
        </xs:restriction>
    </xs:simpleType>
</xs:element>

1 个答案:

答案 0 :(得分:3)

正如XML Schema Regular Expressions

中所述
  

特别值得注意的是完全没有类似的锚   插入符号和美元,字边界和环视。始终是XML架构   隐式地锚定整个正则表达式。正则表达式必须匹配   元素的整个元素被认为是有效的。

因此,上面的例子应该是:

<xs:element name="VoucherCode" maxOccurs="10" minOccurs="1">
    <xs:simpleType>
        <xs:restriction base="xs:string">
            <xs:pattern value="TLR.*" />
        </xs:restriction>
    </xs:simpleType>
</xs:element>