मैं फ़ाइलों का एक समूह संभालने की कोशिश कर रहा हूं, और फिर फ़ाइल नामों में अपर्याप्त जानकारी को हटाने के लिए मुझे बदलने की जरूरत है; विशेष रूप से, मैं ब्रांड्स के अंदर पाठ को हटाने की कोशिश कर रहा हूं। उदाहरण के लिए:मैं रेगेक्स के साथ कोष्ठक के भीतर पाठ को कैसे हटा सकता हूं?
filename = "Example_file_(extra_descriptor).ext"
और मैं फ़ाइलों को जहां निक्षिप्त अभिव्यक्ति बीच में या अंत में हो सकता है की एक पूरी गुच्छा regex के लिए, और चर लंबाई का चाहते हैं।
रेगेक्स कैसा दिखता है? पर्ल या पायथन वाक्यविन्यास को प्राथमिकता दी जाएगी।
क्या आप सुनिश्चित हैं कि "extra_descriptor" में ")" शामिल नहीं हो सकता है? यदि यह समस्या बहुत कठिन हो सकती है ... – dmckee
@dmckee: यदि माता-पिता * नेस्टेड * हो सकते हैं तो यह कठिन होता है, हालांकि यदि आप पहले '(' और अंतिम ') के बीच सबकुछ से छुटकारा पाना चाहते हैं तो यह है ज्यादा कठिन नहीं: बस '। *' के बजाय लालची '। *' का प्रयोग करें। –
@j_random_hacker आप सही हैं, यह बहुत कठिन है क्योंकि नेस्टेड कोष्ठक को एफएसएम के साथ पहचाना नहीं जा सकता है (आपको घोंसले के स्तर का ट्रैक रखना है जो असीमित है) और इसलिए रेगेक्स द्वारा नहीं। इसके लिए आपको संभवतः घोंसले के सीमित स्तर तक सीमित होना है। – skyking