XML 不同类型的方案验证
XML Scheme validation for different types
我正在尝试为应以
结尾的电子邮件制作 xml 验证码
@gmail.com
@hotmail.com
@yahoo.com
我已经为 gmail 实现了一个代码,但我不知道如何为 3 种不同的类型创建一个模式。
<xs:element name="email">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Za-z_.0-9]+@gmail\.com"></xs:pattern>
</xs:restriction>
</xs:simpleType>
</xs:element>
您可以使用
<xs:pattern value="[A-Za-z0-9_.]+@(gmail|hotmail|yahoo)\.com"></xs:pattern>
<xs:pattern value="[^@]+@(gmail|hotmail|yahoo)\.com"></xs:pattern>
(gmail|hotmail|yahoo)\.com
部分将匹配 gmail.com
、hotmail.com
或 yahoo.com
。请注意,您只能在 XSD 正则表达式中使用 捕获 组,因此不允许 (?:...)
。
注意 [^@]+
匹配除 @
之外的任何一个或多个字符,并且是一种更宽松的电子邮件验证模式,以防万一您需要在用户名中允许更多字符。
我正在尝试为应以
结尾的电子邮件制作 xml 验证码@gmail.com
@hotmail.com
@yahoo.com
我已经为 gmail 实现了一个代码,但我不知道如何为 3 种不同的类型创建一个模式。
<xs:element name="email">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Za-z_.0-9]+@gmail\.com"></xs:pattern>
</xs:restriction>
</xs:simpleType>
</xs:element>
您可以使用
<xs:pattern value="[A-Za-z0-9_.]+@(gmail|hotmail|yahoo)\.com"></xs:pattern>
<xs:pattern value="[^@]+@(gmail|hotmail|yahoo)\.com"></xs:pattern>
(gmail|hotmail|yahoo)\.com
部分将匹配 gmail.com
、hotmail.com
或 yahoo.com
。请注意,您只能在 XSD 正则表达式中使用 捕获 组,因此不允许 (?:...)
。
注意 [^@]+
匹配除 @
之外的任何一个或多个字符,并且是一种更宽松的电子邮件验证模式,以防万一您需要在用户名中允许更多字符。