次の形式のドキュメントがあります。
<scheme attr1="lorem" attr2="ipsum" global-test="text goes here" global-attr2="second text goes here">
</scheme>
正規表現を使用して、一致するすべての属性を抽出したいと考えていますglobal-(.*)
。また、「scheme」要素でのみ一致できるため、次のような単純な正規表現を使用すること(global-([^=]*)="([^"]*)")+
はできません。次の正規表現を試しました。
<scheme.*([\s]+global-([^=]*)="([^"]*)")+
ただし、これは「global-attr2」でのみ一致し、他のグローバル属性は .* セレクターの一部として表示されます。.* の * セレクターを遅延させても、役に立たないようです。
また、正規表現を使用して XML ドキュメントからデータを取得するのは適切ではないことはわかっていますが、このスクリプトはプリプロセッサ用です。解析する前に XML を変更します。