1. A computer-implemented method comprising: receiving a user query comprising one or more query keywords; in response to receiving the user query, automatically determining, using a processor, a set of segment candidates based on the user query and an indexing structure, the indexing structure comprising a plurality of segment constraints associated with a corresponding segment candidate, the one or more segment constraints being one of a critical segment constraint, an exclusionary segment constraint and a supplemental segment constraint, wherein each of the one or more segment constraints comprises a listing of one or more critical keywords and at least one of one or more exclusionary keywords or one or more supplemental keywords, said critical segment constraint comprising one or more textual words conveying a concept synonymous to the corresponding segment candidate, said exclusionary segment constraint comprising one or more textual words conveying a concept not synonymous to the corresponding segment candidate; said determining comprising matching the one or more query keywords with the one or more critical keywords and the at least one exclusionary keyword or supplemental keyword of the corresponding segment candidate, said determining further comprising: generating a critical word group count and an exclusionary count for each of the one or more critical keywords, and at least one exclusionary keyword or supplemental keyword; generating a segment candidate based on a sum of the critical word group count and the exclusionary count; ranking, using the processor, the set of segment candidates based on a total number of critical and supplemental segment constraints for each of the set of segment candidates to generate a ranked set of segment candidates stored in a memory and retrievable by a set of program code executed by the processor; and providing a result associated with the ranked set of segment candidates.