XML XSD正则表达式检查

时间:2011-10-04 06:07:03

标签: xml xsd

我希望用户输入以下电话号码:

tel:+6411113100

即。电话号码必须以tel:+

开头

有人可以告诉我如何应用xsd验证来验证上述内容吗?

谢谢。

3 个答案:

答案 0 :(得分:3)

  

我希望用户输入以下电话号码:tel:+6411113100

我不得不质疑这是否是一个明智的设计。例如,电话号码通常带有嵌入式空格,如果他们愿意,我看不出任何阻止​​用户进入空间的充分理由。换句话说,我想知道用户想要什么,而不是你想要什么。

答案 1 :(得分:3)

我同意Michael Kay关于合理设计的上述答案。但是,如果确实想要限制值,请参考以下示例:

  <xsd:simpleType name="telephoneNumber">
    <xsd:restriction base="xsd:string">
      <xsd:pattern value="tel:\+\d*"/>
    </xsd:restriction>
  </xsd:simpleType>

答案 2 :(得分:1)

您需要为字符串定义“简单类型”。使用'string'作为基础限制类型(也捕获tel:+前缀)并使用pattern元素限制为'tel:+'后跟数字。