क्या वृक्ष संरचनाओं को खोजने और संशोधित करने के लिए नियमित अभिव्यक्ति समकक्ष हैं? संक्षिप्त मिनी-भाषाएं (जैसे पर्ल रेगेक्स) जो मैं ढूंढ रहा हूं।रेगेक्स?
यहां एक उदाहरण है जो मैं जो खोज रहा हूं उसे स्पष्ट कर सकता हूं।
<root>
<node name="1">
subtrees ....
</node>
<node name="2">
<node name="2.1">
data
</node>
other subtrees...
</node>
</root>
कोई कार्रवाई है कि ऊपर पेड़ पर संभव हो जाएगा "नोड 2.1 पर कदम सबट्री में नोड 1. पर सबट्री" है आपरेशन के परिणाम कुछ लग सकता है की तरह ..
<root>
<node name="1">
subtrees ....
<node name="2.1">
data
</node>
</node>
<node name="2">
other subtrees...
</node>
</root>
खोजें और कम से कम 2 बच्चों के साथ सभी नोड्स लगता है जैसे कार्य की जगह, अगर सभी नोड्स जिसका डेटा "एक" और साथ "बी" से बदलने के साथ शुरू होता लगता है subtrees कम से कम 2 अन्य भाई बहन, आदि समर्थित होना चाहिए।
स्ट्रिंग्स के लिए, जहां स्ट्रिंग की लंबाई में एकमात्र आयाम है, हम नियमित अभिव्यक्तियों का उपयोग करके उपरोक्त कई ऑपरेशन (या उनके 1 डी समकक्ष) कर सकते हैं। मुझे आश्चर्य है कि पेड़ों के लिए समकक्ष हैं या नहीं। (एक एकल regex के बजाय, आपको परिवर्तन नियमों का एक सेट लिखने की आवश्यकता हो सकती है, लेकिन यह ठीक है)।
मैं जानना चाहता हूं कि कुछ सरल मिनी भाषा है (regex per.se नहीं, लेकिन कुछ ऐसा है जो पुस्तकालयों के माध्यम से रेगेक्स के रूप में सुलभ है ..)। इन परिचालनों को करने के लिए? अधिमानतः, एक अजगर पुस्तकालय के रूप में।
से लाइब्रेरी डाउनलोड कर सकते हैं कि उस चीज़ का वाक्यविन्यास कैसे हो सकता है ... :) –
एमएमएच, क्या आप अपने पास क्या है और रेगेक्स को क्या करना चाहिए इसके बारे में अधिक स्पष्ट हो सकता है? – akappa
यह अधिक विशिष्ट होने की आवश्यकता है - क्या आप XML को पार्स कर रहे हैं या क्या? –