इस कोशिश RegexOptions.Singleline
ध्वज जो .
को एक नई लाइन एलएफ प्रतीक के साथ-साथ अन्य सभी पात्रों से मेल खाता है), DontMatchThis
केवल पहली पंक्ति के लिए खोजा जाएगा, और केवल एलएफ प्रतीकों के बिना एक स्ट्रिंगसे मेल खाई जाएगी।
पैटर्न विवरण:
(?s)
- स्ट्रिंग लंगर की शुरुआत
(?!.*DontMatchThis)
- - एक negative lookahead जाँच यदि कोई हो तो 0 या एक DOTALL/Singleline संशोधक .
मैच किसी भी चरित्र
^
बनाने अधिक पात्र (लालची .*
उप-पैटर्न से मिलान - नोट एक आलसी .*?
संस्करण (अगले उपपरांत मैच से पहले जितना संभव हो उतना अक्षर मिलान करना) DontMatchThis
स्ट्रिंग स्टार्ट के करीब होने की अपेक्षा की जाती है) DontMatchThis
.*
- जितना संभव हो सके शून्य या अधिक वर्ण,
$
- स्ट्रिंग का अंत (देखें एंकर वर्ण: डॉलर ($
))।
आप रेगेक्स के साथ ऐसा क्यों करना चाहते हैं और String.IndexOf का उपयोग नहीं करना चाहते हैं? –
क्योंकि कभी-कभी आपका regex कॉन्फ़िगर में है और आप कोड को नहीं बदल सकते हैं। या क्योंकि आपको इसे एक और अधिक जटिल regex के उप-संपीड़न के रूप में आवश्यकता है। या कई कारणों में से कोई भी। आप यह भी पूछ सकते हैं, "आप अपनी बिल्ली को व्याख्यात्मक नृत्य के माध्यम से पाठ के लिए क्यों नहीं लेते हैं?"। कभी-कभी आपके हाथ में हाथ नहीं है। –