ya, it is correct, i misunderstood it.. any optimization on the same though ?
On Fri, Dec 28, 2012 at 9:55 AM, shady <[email protected]> wrote: > @ritesh > umm, well here's a simple testcase to show the problem in the code...... > isMatch("aa", "a*") > > > On Thu, Dec 27, 2012 at 7:17 PM, Ritesh Mishra <[email protected]> wrote: > >> @shady : either the string will be stored in heap or stack. thus >> accessing address in heap or stack is not going to give u seg fault . and >> rest things are very well handled in the code :) >> As saurabh sir has explained in thread >> https://mail.google.com/mail/u/1/#inbox/13ba918bdb9aac9e >> when seg fault occurs . >> Regards, >> >> Ritesh Kumar Mishra >> Information Technology >> Third Year Undergraduate >> MNNIT Allahabad >> >> >> On Thu, Dec 27, 2012 at 6:43 PM, ~*~VICKY~*~ <[email protected]>wrote: >> >>> I'm giving you a simple recursive code which i wrote long back. Please >>> let me know if it fails for any cases. Ignore the funny cout's It used to >>> help me debug and i'm lazy to remove it. :P :) >>> >>> #include<iostream> >>> #include<string> >>> using namespace std; >>> /* >>> abasjc a*c >>> while(pattern[j] == '*' text[i] == pattern[j]) {i++; j++} >>> */ >>> bool match(string text, string pattern, int x, int y) >>> { >>> if(pattern.length() == y) >>> { >>> cout<<"hey\n"; >>> return 1; >>> } >>> if(text.length() == x) >>> { >>> cout<<"shit\n"; >>> return 0; >>> } >>> if(pattern[y] == '.' || text[x] == pattern[y]) >>> { >>> cout<<"in match"<<endl; >>> return match(text,pattern,x+1,y+1); >>> } >>> if(pattern[y] == '*') >>> return match(text,pattern,x+1,y) || match(text,pattern,x+1,y+1) >>> || match(text,pattern,x,y+1); >>> >>> if(text[x] != pattern[y]) >>> { >>> cout<<"shit1\n"; >>> return 0; >>> } >>> >>> } >>> >>> int main() >>> { >>> string text,pattern; >>> cin >> text >> pattern; >>> cout << match(text, pattern,0, 0); >>> } >>> >>> On Thu, Dec 27, 2012 at 6:10 PM, shady <[email protected]> wrote: >>> >>>> Thanks for the link Ritesh, >>>> if (isMatch(s, p+2)) return true; >>>> isnt this line incorrect in the code, as it can lead to segmentation >>>> fault... how can we directly access p+2 element, we know for sure that p is >>>> not '\0', but p+1 element can be '\0' , therefore leading to p+2 to be >>>> undefined. >>>> >>>> On Thu, Dec 27, 2012 at 6:23 AM, Ritesh Mishra <[email protected]>wrote: >>>> >>>>> try to solve it by recursion .. >>>>> http://www.leetcode.com/2011/09/regular-expression-matching.html >>>>> >>>>> >>>>> Regards, >>>>> >>>>> Ritesh Kumar Mishra >>>>> Information Technology >>>>> Third Year Undergraduate >>>>> MNNIT Allahabad >>>>> >>>>> >>>>> On Sun, Dec 23, 2012 at 11:14 PM, Prem Krishna Chettri < >>>>> [email protected]> wrote: >>>>> >>>>>> Well I can tell you Something about design pattern to solve this >>>>>> case.. >>>>>> >>>>>> What I mean is by using The State Machine Design Pattern, >>>>>> Anyone can solve this. but Ofcourse it is complicated. >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> On Sun, Dec 23, 2012 at 11:01 PM, shady <[email protected]> wrote: >>>>>> >>>>>>> that's the point, Have to implement it from scratch... otherwise >>>>>>> java has regex and matcher, pattern to solve it........... >>>>>>> >>>>>>> >>>>>>> On Sun, Dec 23, 2012 at 10:28 PM, saurabh singh <[email protected] >>>>>>> > wrote: >>>>>>> >>>>>>>> If you need to implement this for some project then python and java >>>>>>>> have a very nice library >>>>>>>> >>>>>>>> >>>>>>>> Saurabh Singh >>>>>>>> B.Tech (Computer Science) >>>>>>>> MNNIT >>>>>>>> blog:geekinessthecoolway.blogspot.com >>>>>>>> >>>>>>>> >>>>>>>> On Sun, Dec 23, 2012 at 7:48 PM, shady <[email protected]> wrote: >>>>>>>> >>>>>>>>> >>>>>>>>> http://stackoverflow.com/questions/13144590/to-check-if-two-strings-match-with-alphabets-digits-and-special-characters >>>>>>>>> >>>>>>>>> any solution for this......... we need to implement such regex >>>>>>>>> tester................ >>>>>>>>> >>>>>>>>> some complex cases : >>>>>>>>> *string* * regex * -> * status* >>>>>>>>> * >>>>>>>>> * >>>>>>>>> reesd re*.d -> match >>>>>>>>> re*eed reeed -> match >>>>>>>>> >>>>>>>>> can some one help with this ? >>>>>>>>> >>>>>>>>> -- >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> -- >>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>>> -- >>>>>> >>>>>> >>>>>> >>>>> >>>>> -- >>>>> >>>>> >>>>> >>>> >>>> -- >>>> >>>> >>>> >>> >>> >>> >>> -- >>> Cheers, >>> >>> Vicky >>> >>> -- >>> >>> >>> >> >> -- >> >> >> > > --
