2009-07-09 2 views
2

XMLスキーマに組み込まれたときに、検証の国際電話番号については、この正規表現はエラーになりますなぜ私は理解していない:エラーXMLスキーマに正規表現(電話無感覚検証)を埋め込む(XSD)

<xs:simpleType name="phoneType"> 
    <xs:restriction base="xs:string"> 
     <xs:pattern value="^\+(?:[0-9] ?){6,14}[0-9]$" /> 
    </xs:restriction> 
</xs:simpleType> 

どうしたの?グループマッチングをサポートしていますか? Xml Schemaでサポートされないのはなぜですか?

ありがとうございました。

Indrit

+0

どのような正規表現ですか?/<&> && <<><>> && /? – Axeman

+0

申し訳ありませんがAxeman、視覚化の問題があった – Indrit

+0

私はそれをテストしたときに動作します。問題を再現するにはどうすればよいですか? –

答えて

3

それはおそらくアンカー(^$)です。 XMLスキーマでは、すべてregexesが両端に暗黙的に固定されています。明示的アンカーはサポートされていません。

+0

こんにちはアラン、ありがとう、おそらくあなたも正しいですが、この場合問題はアンカーに関連していませんでした。どうもありがとうございました。 Indrit – Indrit

4

XMLスキーマは、グループマッチングをサポートしていますが、キャプチャまたはルックアラウンドはサポートしていません。これは、?:非キャプチャグループではないことを意味します。

http://www.regular-expressions.info/xml.htmlによれば、^および$アンカーもサポートしていません。

+0

こんにちはソロモンギブス、あなたの答えをありがとう。私はあなたが正しいと思う、スキーマは非キャプチャグループをサポートしていません。私は既にアンカーを削除しようとしましたが、問題はまだ残っていました。ありがとうございました。 Indrit – Indrit

関連する問題