1. A method of comparing an input search string to a plurality of stored business names, the method comprising: receiving a search query that includes the input search string, the input search string including a plurality of terms; comparing each of the plurality of terms to a list of category terms; for each of the plurality of terms matching one of the list of category terms, identifying the matching term as a category term; for each of the plurality of terms not matching one of the list of category terms, identifying the non-matching term as a naming term; filtering the plurality of stored business names based on each identified category term to produce a reduced set of business names; and comparing at least one identified naming term to the reduced set of business names to identify at least one matching name.