मान लीजिए कि हम निम्न पाठ डालते हैं: "1 एक, 2 बी, 3 सी, 4 डी" और निम्नलिखित अभिव्यक्ति:/\ घ (\ डब्ल्यू)/जीजावास्क्रिप्ट नियमित अभिव्यक्ति इटरेटर को निकालने के लिए समूहों
क्या हम नियमित अभिव्यक्ति द्वारा बताए गए ए, बी, सी, डी निकालने के लिए करना चाहते हैं।
दुर्भाग्य से "1 ए, 2 बी, 3 सी, 4 डी"। मैच (/ \ d (\ w)/g) एक सरणी उत्पन्न करेगा: 1 ए, 2 बी, 3 सी, 4 डी और RegExp। $ 1 में केवल अंतिम मैच के समूह होंगे, यानी RegExp। $ 1 == 'डी'।
कैसे मैं भी इस regex से अधिक पुनरावृति करूँ ताकि समूहों निकाल सकते हैं ... मैं एक समाधान भी स्मृति कुशल है, यानी इटरेटर वस्तु के कुछ प्रकार
संपादित रहा हूँ: यह की जरूरत है सामान्य होना मैं केवल यहां एक साधारण उदाहरण प्रदान कर रहा हूं। एक समाधान सरणी पर लूप करना है और वैश्विक ध्वज के बिना प्रत्येक आइटम के लिए रेगेक्स को दोबारा लागू करना है, लेकिन मुझे यह समाधान थोड़ा बेवकूफ लगता है हालांकि ऐसा करने का एकमात्र तरीका लगता है।
अपने हाल के प्रश्नों को स्वीकार करें। – hsz
क्या इसे रेगेक्स होना चाहिए? आप रिक्त स्थान और अल्पविरामों पर भी विभाजित हो सकते हैं और उस तरह से निकालेंगे। – pimvdb
हां, क्योंकि मैं केवल एक साधारण उदाहरण प्रदान कर रहा हूं ... यह इससे अधिक जटिल है। एक समाधान सरणी में प्रत्येक मैच के लिए रेगेक्स को फिर से लागू करना है, लेकिन यह सिर्फ बेवकूफ – Pass