ツリー構造を検索および変更するための正規表現に相当するものはありますか?簡潔なミニ言語(perl正規表現のような)が私が探しているものです。木構造の正規表現ですか?
ここでは、私が探しているものを明確にする例があります。
<root>
<node name="1">
subtrees ....
</node>
<node name="2">
<node name="2.1">
data
</node>
other subtrees...
</node>
</root>
上記ツリーに可能であろう動作が「 にノード1におけるサブツリーのノード2.1で移動サブツリー」であります演算の結果があればそのデータは「a」と「b」と交換で始まるすべてのノードを見つけ、次のようになり..
<root>
<node name="1">
subtrees ....
<node name="2.1">
data
</node>
</node>
<node name="2">
other subtrees...
</node>
</root>
検索し、少なくとも2人の子供を持つすべてのノードを見つけるような操作を交換するかもしれませんサブツリーには少なくとも2人の他の兄弟などがサポートされるべきです。
文字列の場合、唯一の次元が文字列の長さ全体にわたる場合、正規表現を使用して上記の操作の多く(またはその1D相当)を実行できます。私は木に相当するものがあるのだろうかと思います。 (単一の正規表現の代わりに、変換規則のセットを書く必要があるかもしれませんが、それは問題ありません)。
私はいくつかの単純なミニ言語(regex per.seではなく、ライブラリなどを介して正規表現としてアクセス可能なもの)があるかどうかを知りたいと思います。これらの操作を実行するには?好ましくは、Pythonライブラリとして。
からダウンロードできます。 –
Mmh、あなたはあなたが持っていることと正規表現がすべきことをより明示することができますか? – akappa
これはより具体的である必要があります - あなたはXMLや何を解析していますか? –