मैं एक regexp जो शब्दों का एक अल्पविराम पृथक सूची से मेल खाते हैं और सभी शब्दों पर कब्जा होगा लिखने की कोशिश कर रहा हूँ। इस लाइन मिलान किया जाना चाहिए apple , banana ,orange,peanut
और कैप्चर apple
, banana
, orange
, peanut
होना चाहिए। regexp निम्नलिखित है कि मैं का उपयोग करने के लिए:अजीब regexp व्यवहार - केवल पहले से मेल खाता है और पिछले कैप्चर समूह
^\s*([a-z_]\w*)(?:\s*,\s*([a-z_]\w*))*\s*$
यह सफलतापूर्वक स्ट्रिंग से मेल खाता है, लेकिन अचानक ही apple
और peanut
पर कब्जा कर लिया गया है। यह व्यवहार सी # और पर्ल दोनों में देखा जाता है। इस प्रकार मुझे लगता है कि मैं regexp मिलान कैसे काम करता है के बारे में कुछ याद कर रहा हूँ। कोई विचार? :)
+1 मुझे यकीन है कि अगर .net इस सुविधा है नहीं था और जांच करने के लिए बहुत आलसी था। – stema
@stema मुझे यह भी एहसास नहीं हुआ कि यह एक मुद्दा था, मैंने सोचा कि सभी मूल्य 'समूह' में बदल जाएंगे! – Rawling
मुझे 'कैप्चर' संग्रह पर इंगित करने के लिए धन्यवाद! आखिरकार मैं एक ही regexp का उपयोग करने के साथ आया क्योंकि मैंने सवाल में रखा था और फिर मैं 'int (= i = 1; i
bazzilic