2

假设我需要验证一个模式——数字、破折号、数字(即 5-9)。

所以我创建了和 .xsd 类似的东西......

<xs:simpleType name="height_string_t">
  <xs:restriction base="xs:string">
    <!-- The following isn't going to work, or is it? -->
    <xs:pattern value="[0-9]-[0-9]"/>
  </xs:restriction>
</xs:simpleType>

.xsd 中模式标记的“转义字符”是什么?

4

1 回答 1

3

要回答您的问题,它是反斜杠。在这里查看简洁的语法。它确实来自 W3C

我想说的是,尽管您不需要在您的情况下转义破折号,即<xs:pattern value="[0-9]-[0-9]"/>完全有效并且按照您的描述进行操作:数字、破折号、数字。

你可以逃脱它,如<xs:pattern value="[0-9]\-[0-9]"/>; 再次,你不需要,效果是一样的。

如果您在字符类表达式中对其进行转义,那么它会有所不同,即 a"[0\-9]"表示零、破折号、九中的一个(而不是包含范围零、一、二……一直到九)。

于 2013-10-03T03:23:11.443 回答