A program recommendation device comprising: a search term receiver which is configured to receive a search term designated by a user; characterised in that the program recommendation device comprises: a partial match searcher which is configured to search an electronic program list for at least one program having program information which includes at least one word or one phrase having a text string which at least partially matches the text string of the received search term, and to output a partial match search result set based on a result of the search; a language analyzer which is configured to perform a language analyzing process comprising a morphological analysis with respect to program information of each of the at least one program included in the partial match search result set and to output an analyzed search result set; and an exact match searcher which is configured to search the analyzed search result set for at least one program having program information which includes at least one word or one phrase which exactly matches the received search term, and to output an exact match search result set based on a result of the search, wherein when there is a match result the at least one program included in the exact match search result set is displayed on a display as a recommended program. a search term receiver which is configured to receive a search term designated by a user; characterised in that the program recommendation device comprises: a partial match searcher which is configured to search an electronic program list for at least one program having program information which includes at least one word or one phrase having a text string which at least partially matches the text string of the received search term, and to output a partial match search result set based on a result of the search; a language analyzer which is configured to perform a language analyzing process comprising a morphological analysis with respect to program information of each of the at least one program included in the partial match search result set and to output an analyzed search result set; and an exact match searcher which is configured to search the analyzed search result set for at least one program having program information which includes at least one word or one phrase which exactly matches the received search term, and to output an exact match search result set based on a result of the search, wherein when there is a match result the at least one program included in the exact match search result set is displayed on a display as a recommended program. a partial match searcher which is configured to search an electronic program list for at least one program having program information which includes at least one word or one phrase having a text string which at least partially matches the text string of the received search term, and to output a partial match search result set based on a result of the search; a language analyzer which is configured to perform a language analyzing process comprising a morphological analysis with respect to program information of each of the at least one program included in the partial match search result set and to output an analyzed search result set; and an exact match searcher which is configured to search the analyzed search result set for at least one program having program information which includes at least one word or one phrase which exactly matches the received search term, and to output an exact match search result set based on a result of the search, wherein when there is a match result the at least one program included in the exact match search result set is displayed on a display as a recommended program.