कृपया ध्यान से पढ़ें: यह थोड़ा असामान्य है और आप "रेगेक्स" या "दोस्त का उपयोग कैसे नहीं करते हैं, बस स्ट्रिंग.SubString का उपयोग करने की तरह नहीं है"(), "आदि ...दो अक्षरों के बीच पाठ प्राप्त करने के लिए रेगेक्स
मुझे रेगेक्स (एक पूर्व-मौजूदा विधि का उपयोग करने के लिए) लिखने की आवश्यकता है जो घुंघराले ब्रेसिज़ के बीच पाठ से मेल खाएगा, लेकिन घुंघराले ब्रेसिज़ स्वयं को नहीं।
उदाहरण के लिए: "{MatchThisText}" और "ला ला ला {MatchThisText} ला ला ला ..."
चाहिए दोनों मैच: "MatchThisText"
Someone asked this exact question a year ago, और वह regexes के लिए समाधान का एक गुच्छा मिला है जो "MatchThisText" के अलावा घुंघराले ब्रेसिज़ से मेल खाता है, जिसके परिणामस्वरूप "{MatchThisText}" का एक मैच होता है जो वह (या मुझे) की आवश्यकता नहीं होती है।
अगर कोई रेगेक्स लिख सकता है जो वास्तव में घुंघराले ब्रेसिज़ के बीच केवल वर्णों से मेल खाता है, तो मैं वास्तव में इसकी सराहना करता हूं। इसे किसी भी ASCII मानों की अनुमति देनी चाहिए, और पहले समापन ब्रैकेट पर मैच को रोकना चाहिए।
उदाहरण के लिए: "{retailCategoryUrl}/{फिल्टर}"
मैच चाहिए: retailCategoryUrl और फिल्टर
नहीं बल्कि मैच: "retailCategoryUrl}/{फिल्टर" (सब कुछ है लेकिन बाहरी ब्रेसिज़)
अरे, यह मेरे लिए वास्तव में एक मुश्किल है, इसलिए यदि आप में से कुछ के लिए यह मामूली है तो कृपया प्रश्न को क्षमा करें।
धन्यवाद!
काफी आसान (समूहीकरण आवश्यकता है, लेकिन ईमानदारी से, यह एक बहुत मौलिक विशेषता है), जब तक आप नेस्टेड ब्रेसिज़ "सही ढंग से" पर विचार करना चाहते: यहाँ एक उदाहरण है कि टेम्पलेट तार machting के लिए css' और 'के बीच पाठ machtes है (उदाहरण के लिए पूर्ण उड़ा पार्सर्स करते हैं), इस मामले में यह असंभव है (उन गैर-रेगेक्स-वाई एक्सटेंशन का उपयोग करते समय कुछ कार्यान्वयन, जैसे नेट, है)। – delnan
हमें अधिक संदर्भ की आवश्यकता होगी, क्योंकि समाधान में शायद पीछे-पीछे और आगे के ऑपरेटर शामिल होंगे, इसलिए आप जिस रेगेक्स का उपयोग कर रहे हैं उसकी बोली पर निर्भर करते हैं। –
'{(\ w +)}' - ब्रैकेट समूह को इंगित करते हैं, जिसे आप सामग्री प्राप्त कर सकते हैं। –