में डबल व्यंजनों को मिलाएं मेरे पास कई शब्दों की एक सूची है। मुझे "आईएनजी", "एड", "ied" पर समाप्त होने वाले सभी शब्दों को ढूंढना है और एक स्वर के साथ और व्यंजन को दोगुना करना चाहिए: शब्दों से मेल खाना चाहिए: भिक्षा, झुकाव, ज़गिंग। की मदद से मेल नहीं (डबल व्यंजन -not "एल.पी.")Regex. C#
\w*[^aoyie][aoyie]([^aoyie])\1(ed|ing|ied)
यह RegexPal.com पर काम कर रहा है, लेकिन यह सी # में काम नहीं कर रहा (मेल खाता नहीं किसी भी शब्द, सूची में 0 शब्द रिटर्न)
मेरे कोड:
List<Book_to_Word> allWords = (from f in db2.Book_to_Words.AsEnumerable() select f).ToList();
List<Book_to_Word> wordsNOTExist = (from f in allWords
where Regex.IsMatch(f.WordStr, @"^(\w*[^aoyie]+[aoyie]([^aoyie])(ed|ing|ied))$")
select f).ToList();
काम करता है जब मैं \ 1 का उपयोग नहीं करता। लेकिन एकल व्यंजन के साथ शब्दों को वापस करता है।
यदि मैं उपरोक्त रेगेक्स में डालता हूं तो regexpal.com पर यह भीख मांगे या ज़गिंग से मेल नहीं खाता है। ऐसा करने के लिए nhahtdh द्वारा सुझाए गए संशोधन की आवश्यकता है। – Chris
और क्या आप स्पष्टीकरण दे सकते हैं कि \ 1 का उपयोग करने के बारे में क्या काम नहीं करता है? क्या यह चीजों को वापस नहीं करता है या आपको संकलन त्रुटि मिलती है, क्या यह अपवाद फेंकता है ...? – Chris