0

スキーマ内の正規表現パターンを使用して xml 要素の内容を制限しようとしていますが、うまく機能せず、追加すればするほど悪化するようです。

要件は次のとおりです。

  • 要素文字列は 512 文字より長くすることはできません (このビットは簡単ですが、完全を期すために追加されています)
  • 文字列は、複数のキーと値のペアで構成されます。
  • キーと値のペアは「^」で区切られます
  • 各キーと値のペアは、3 文字のキーとそれに続く任意の数の値の文字で構成されます。
  • キーは値から「|」で区切られます

XML の例は次のとおりです。

<myElement>
    ABC|This is some value text for key ABC^DEF|This is some value text for key DEF^GHI|This is some value text for key GHI^JKL|This is some value text for key JKL^
</myElement>
4

1 に答える 1

0

質問では、「キーと値のペアは「^」で区切られます」と言っていますが、例ではキーと値のペアが「^」で終了しているため、それがあなたが望むものであると想定しています。

キーが一致します\w{3}(3 文字または数字)。

値が一致します[^^<]*( を除く任意の数の任意の文字^)。

完全な正規表現は(\w{3}\|[^^]*\^)*.

于 2012-07-17T19:19:20.087 に答える