1. A computer-implemented method of searching speech data comprising in-vocabulary and out-of-vocabulary words, the method comprising, via a computer processor executing stored program instructions: Receiving, by the computer processor, a search query comprising a phrase comprising at least one in-vocabulary word and at least one out-of-vocabulary word; extracting, by the computer processor, search terms from the phrase, the search terms comprising at least one in-vocabulary search term and at least one out-of-vocabulary search term; retrieving, by the computer processor, a first list of occurrences of words for the at least one in-vocabulary search term, the first list retrieved from a first index of words having first timestamps; retrieving, by the computer processor, a second list of occurrences of sub-words for the at least one out-of-vocabulary search term, the second list retrieved from a second index of sub-words having second timestamps; and merging, by the computer processor, the first list of occurrences of words and the second list of occurrences of sub-words to create a merged list, wherein merging the first list and the second list comprises evaluating the first timestamps and the second timestamps and adding to the merged list occurrences of combinations of words from the first list and sub-words from the second list that satisfy at least one evaluation criterion, wherein the at least one evaluation criterion comprises a threshold for a difference between first and second timestamps.
6. The method of searching of claim 1 , wherein merging the first list and the second list generates search results that match the phrase of the search query and wherein the method further comprises ranking the search results according to temporal proximity of adjacent pairs of words and sub-words in the search results.