用于强制LastName/FirstName的XSD验证模式

用于强制LastName/FirstName的XSD验证模式,xsd,xsd-validation,xsd-1.1,Xsd,Xsd Validation,Xsd 1.1,我需要强制使用LASTNAME/FIRSTNAME模式,比如Smith/John 字符可以是字母数字(小写/大写),也包括特殊字符,如ë等 模式: <xsd:pattern value="[a-zA-Z0-9]/[a-zA-Z0-9]"/> 基本上规则是 -刀口之前有什么事吗 -斜杠之后有什么事吗 -不允许使用“/John”、“John/”等模式 提前谢谢。您的限制应该是 <xs:pattern value="(([a-zA-Z0-9])*)([/])(([a-zA-Z

我需要强制使用LASTNAME/FIRSTNAME模式,比如Smith/John

字符可以是字母数字(小写/大写),也包括特殊字符,如ë等

模式:

 <xsd:pattern value="[a-zA-Z0-9]/[a-zA-Z0-9]"/>

基本上规则是 -刀口之前有什么事吗 -斜杠之后有什么事吗 -不允许使用“/John”、“John/”等模式


提前谢谢。

您的限制应该是

<xs:pattern value="(([a-zA-Z0-9])*)([/])(([a-zA-Z0-9])*)"/>

我通过ASCII验证了这个模式 假设您不希望名称中包含数字:

        <xs:pattern value="[a-zA-Z]+/[a-zA-Z]+"/>
        <xs:pattern value="[a-zA-Z0-9]+/[a-zA-Z0-9]+"/>

解释
\p{L}
匹配字母类别中的Unicode代码点。

不需要所有这些括号,可能应该将
*
s更改为
+
s,否则“/”将是一个有效的名称。@kjhughes我添加了括号以明确表达式:)但是效果很好。谢谢kjhughes。你说得对。我按照建议做了修改,效果很好。
        <xs:pattern value="\p{L}+/\p{L}+"/>