• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Help me unravel the concept of greedy quantifiers.

 
Ranch Hand
Posts: 924
1
Netbeans IDE Fedora Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
suppose i have a regex as follows

Regex pattern : a? // which means a, 0 or more times. Also this is a greedy quantifier

Now conside the source string as follows :

Source String : aba

On the sun's tutorail on regular expression i read that greedy quantifers will first look for the whole source/input string. if a match is not found , it starts from right. so applying the same concept here if we consider the whole string "aba" clearly there is no match. so now we start from the right , there will be a match at the 2 index. but the actual output of the program is as follows:

I found the text "a" starting at index 0 and ending at index 1
I found the text "" starting at index 1 and ending at index 1.
I found the text "a" starting at index 2 and ending at index 3
I found the text "" starting at index 3 and ending at index 3.

If it is a greed quantifier and as the sun's tutorail as well as KB book points(please refer page 497) that it works the way from right/backwards shouldnt starting character must be found at index 2.
I'm very confused between the working of greedy .kindly help
 
author
Posts: 23951
142
jQuery Eclipse IDE Firefox Browser VI Editor C++ Chrome Java Linux Windows
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Please don't create multiple topics -- with different examples, but addressing the same issue. It cause confusion for all parties.

Your other topic...

https://coderanch.com/t/573141/java-programmer-SCJP/certification/help-understanding-greedy-reluctant-quantifiers

has a better example. And maybe it would be better to use that one instead.

Henry
reply
    Bookmark Topic Watch Topic
  • New Topic