2013-11-27 63 views
1

我已經提供了一個XSD我正在驗證XML。由於XSD不正確,XML驗證失敗。我有一個字段是爲了允許1 - 3個字符的字符串。第一個字符必須是A,B,C或Z,最多可以跟隨2個字符。我沒有太多的經常性的嘗試,但嘗試了各種組合方式無濟於事。XSD/XML RegEx模式值

供給的表達是<xs:pattern value="([A,B,C,Z]{1}\w\?{2})"/>

數據的有效實例是:

B B6 BB AB

無效:

G3 A B 6HC

我確定它是一個相當簡單的表達式,但我沒有看到能夠把它弄清楚!

回答

2
[ABCZ]\w{0,2} 

沒有逗號[]{0,2}允許0到2個單詞字符。擺脫了\?,這將符合字面問號。

+0

謝謝約翰,我確實有這個,它幾乎在那裏,但它通過'A 4'作爲有效。 A和4之間的空間需要使其無效。 – Fred

+0

對不起約翰,我一直在檢查在線正則表達式檢查器上的表達式,似乎我要麼讀取結果錯誤,要麼檢查器傳遞無效數據。我更新了XSD並重新檢查了XML。完美工作。謝謝。 – Fred