Patent ID: 8271525
Filing Date: 2012-09-18
Classification: G06F

Abstract:
1. An address-parsing processor-implemented method, comprising: reading a list of states, including corresponding state variants, from a state database into a cached state array; receiving an input address string; trimming spaces from ends of the input address string; replacing each instance of punctuation in the input address string with a space; replacing each instance of multiple adjacent spaces in the input address string with a single space; splitting the input address string by the single space delimiters into a plurality of address components; associating each of the plurality of address components with an element of an input address array; locating at least one input address array state element corresponding to a matching state from the cached state array by a serially telescoping state search; recording the matching state; dropping the at least one input address array state element from the input address array; reading a list of cities associated with the matching state, including corresponding city variants, into a cached city array; locating at least one input address array city element corresponding to a matching city from the cached city array by a serially telescoping city search; recording the matching city; dropping the at least one input address array city element from the input address array; reading a list of streets associated with the matching city and the matching state, including corresponding street variants, into a cached street array; locating at least one input address array street element corresponding to a matching street from the cached street array by a serially telescoping street search; recording the matching street; dropping the at least one input address array street element from the input address array; reading a list of street prefixes and street suffixes associated with the matching street into the cache; comparing the list of street prefixes and street suffixes with the input address array to identify any matching street prefixes and street suffixes; searching the input address array for a numerical element; recording the numerical element as a house address; dropping the numerical element from the input address array; and providing the matching state, matching city, matching street, and the house address.