"-dhello;-egoodbye;-lcul8r" -replace "-d.*;","-dbonjour;"
देता है:क्या रेगेक्स गैर-लालची को बदलना संभव है?
-dbonjour;-lcul8r
यह संभव यह goodbye
से छुटकारा पाने के नहीं करने के लिए है?
"-dhello;-egoodbye;-lcul8r" -replace "-d.*;","-dbonjour;"
देता है:क्या रेगेक्स गैर-लालची को बदलना संभव है?
-dbonjour;-lcul8r
यह संभव यह goodbye
से छुटकारा पाने के नहीं करने के लिए है?
आपको ?
का उपयोग करके मिलान करने वाले आलसी बनाना चाहिए।
उपयोग:
"-dhello;-egoodbye;-lcul8r" -replace "-d.*?;","-dbonjour;"
हमेशा स्पष्ट होना। .*
सब कुछ यह कर सकते हैं से मेल खाता है (अर्धविराम सहित और जो कुछ इस प्रकार है), लेकिन आप केवल तो बस regex इंजन बता अगले अर्धविराम जब तक मिलान करना चाहते हैं, कि:
"-dhello;-egoodbye;-lcul8r" -replace "-d[^;]*;","-dbonjour;"
[^;]
मैचों किसी भी चरित्र को छोड़कर अर्धविराम।
हालांकि यह इस मामले में काम करता है, यह सिर्फ एक उदाहरण था। मैं वास्तव में लालच को बंद करने के लिए एक स्विच की तलाश में था। लेकिन, धन्यवाद, यह अभी भी उपयोगी सलाह है। – muhmud
@muhmud: ज़रूर। मैं सिर्फ यह कहना चाहता था कि असभ्यता का मतलब "सबसे छोटा संभव मैच" नहीं है। आपको वह मिलता है जब आप निर्दिष्ट करते हैं कि मिलान सामग्री क्या हो सकती है। उदाहरण के लिए '<.*?>' '
बिल्कुल वही जो मैं खोज रहा था, धन्यवाद! – muhmud