<xs:element minOccurs="1" name="Surname">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="70"/>
<xs:pattern value="[a-zA-Z][a-zA-Z][a-zA-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
我有一个如上所述的xml代码,用于捕获minLength 1和max 70的姓氏,上面的代码是否会接受长度在1到70之间的任何姓氏?或者模式值是否会限制姓氏的长度?如果模式值将限制它,它将返回多少以及如何编写它以处理最小和最大长度之间所需的长度?
答案 0 :(得分:0)
或模式值是否会限制姓氏的长度?
是的。
该模式被定义为仅接受三个字母(小写或大写)。
鉴于您在其他地方限制了长度,您应该能够使用允许任意长度的模式:
[a-zA-Z]+
但请注意,很多人的姓氏都不匹配。例如。 &#34; O&#39; Donnel&#34;并且有撇号或带有连字符的双管名称。
通常使用名称(人物和地点),您尝试创建的任何简单规则只允许&#34;更正&#34;名称将有许多有效的例外:您只是阻止人们使用您的系统。请参阅 Falsehoods Programmers Believe About Names 。