1. A method for ranking search results, comprising: receiving a query string; retrieving a plurality of search results that include a corresponding plurality of target strings that relate to the query string; segmenting the query string and each of the plurality of target strings; pairing segments in the query string with respective segments in the target strings to form a plurality of combinations; retrieving a plurality of weights that correspond to the plurality of combinations based on a mapping of word combinations and their respective weights, wherein a weight measures semantic correlation between words in a word combination; and determining a weighted word length based on the weights corresponding to each of the plurality of target strings; and ranking the plurality of target strings based on their respective weighted word lengths.