我試圖在需要使用正則表達式的xsd中驗證字符串。該字符串將採取以下形式...用於驗證字符串的正則表達式
JOE〜PETE〜SAM〜BOB
和以下被認爲是有效的...
JOE
~PETE
JOE~SAM~
~~~BOB
JOE~PETE~~
而且,每個之間的名字〜最多隻能有6個字符(或數字),最多隻能有4個名字。
我想現在的問題是...
[0-9A-ZA-Z] {0,6} [〜] {0,1}正則表達式| [0-9A-ZA- Z] {0,6} [〜] {1} [0-9a-zA-Z] {0,4} [〜] {0,1}
但我想知道他們是否是更好的解決方案。
注:我應該進一步澄清......如果只有4個名字是允許的,那就意味着最多隻允許3個名字。代字符號表示位置,所以如果~~~ BOB發生,那將意味着位置1,2和3是空的,並且第四位被BOB佔用。另外,如果你有JOE ~~~,JOE處於第一位,其餘都是空的。零個或多個名稱可以位於4個位置中的任何位置。此外,允許使用諸如。,*,空格等符號。
得到什麼'~~~','~~~一個B',或空字符串有效? – Qtax