2017-01-10 69 views
-2

正则表达式模式用于匹配包含A-Za-z0-9范围内字符的开始和结尾空格的字符串。但不能用空格和10个字符的长度限制分隔。XML Schema正则表达式

如:

“系统1” 是有效的

“SYS TEM1” 无效

我有一个向前看符号

^(?=.{1,10}$)\s*[A-Za-z0-9]+\s*

但是向前看符号的解决方案不幸的是不能使用与XML模式正则表达式。

+0

嗯,我试过这样的:^(?=。{1,10} $)\ s * [A-Za-z0-9] + \ s * – user3276096

+0

如果前导和尾随空格对长度限制10个字符或它将只是非空格字符? –

+0

它应该是10个字符,包括空格字符 – user3276096

回答

2

您可以使用以下声明:

<xs:element name="root"> 
    <xs:simpleType> 
     <xs:restriction base="xs:string"> 
      <xs:pattern value="\s*[0-9a-zA-Z]+\s*"/> 
      <xs:maxLength value="10"/> 
      <xs:minLength value="1"/> 
     </xs:restriction> 
    </xs:simpleType> 
</xs:element> 

maxLengthminLength将有助于pattern的正则表达式限制沿着应用长度限制。