0

XMLスキーマからのJAXBコード生成を利用して、JAXBとは別のタイプのアサーションを使用するSimpleXMLライブラリを介してAndroidプロジェクトで使用しようとしています(私のAndroidプロジェクトに9MBのlib tu support JAXBを含めたくありません)。 . 以前に尋ねられた質問を参照してください

基本的に、xcj ツールで生成された各 Java ファイルに必要な変更を実行するための小さな Python スクリプトを作成しています。これまでのところ、インポートの削除/変更、単純な行の注釈、および List @XMLElement の注釈に対して機能しています。 @ElementList に変換する必要があります。

私が現在直面している唯一の問題は、次のような @XMLSeeAlso や @XMLType など、複数の行の注釈を削除することです。

@XmlType(name = "AnimatedPictureType", propOrder = {
    "resources",
    "animation",
    "caption"
})

また

@XmlSeeAlso({
    BackgroundRGBColorType.class,
    ForegroundRGBColorType.class
})

Multineline、DotAll、またはその両方を使用してさまざまな戦略を試しましたが、成功しませんでした。私はPythonと同様に「高度な」正規表現の使用法に慣れていないので、おそらく何かばかげたことを見逃しています。

私の単純な XSD 処理では、xcj を使用して完全に自動化されたスクリプトを実行し、JAXB 注釈を単純な XML 注釈に自動的に変換するために実行できない唯一のステップです。

よろしくお願いいたします。

4

1 に答える 1

1

@Xml.*\}\) dotall を有効にすると、@Xml で始まり "})" で終わる注釈は、複数行の場合でも一致するはずです。

正規表現が実際に一致するものをよく見るために、https: //pythex.org/ のような Web サイトでいつでも正規表現をテストできます。

于 2013-11-15T08:52:51.817 に答える