2015-04-01 70 views
1

我已经使用正则表达式是没有类型。但编译器像这样抛出异常。InvalidRegex:模式值'(?:Y | N)'不是有效的正则表达式。

<xsd:simpleType name="YesNoType"> 
     <xsd:annotation> 
      <xsd:documentation> 
       Type for yes and no inputs. 
      </xsd:documentation> 
     </xsd:annotation> 
     <xsd:restriction base="xsd:string"> 
       <xsd:pattern value="(?:Y|N)"/> 
     </xsd:restriction> 
</xsd:simpleType> 

InvalidRegex:模式值'(?:Y | N)'不是有效的正则表达式。报告的错误是:'当前选项设置不支持此表达式'。

请帮我解决这个问题。

+0

我已经在xsd正则表达式验证中添加了这个。 – Ramkumar 2015-04-01 05:37:49

+1

查看XSD第2部分或任何关于XML Schema的书籍,了解它允许的正则表达式的定义。你不能认为所有的正则表达式方言都是一样的。 – 2015-04-01 10:07:16

回答

3

只是简单的东西像

Y|N 

或者

[YN] 

或类似的替换。

在所有版本的正则表达式中都没有实现非捕获伙伴。