1. A method of operating a computer to perform linguistic analysis, comprising the steps of: splitting an input text into words and sentences; for each sentence, comparing phrases in each sentence with known phrases stored in a database, as follows: for each word in the sentence, comparing a value thereof and values of the words following it with values of words of stored phrases, starting with a longest stored phrase that starts with that word, and working from longest to shortest; in the event a match is found between the value of at least two consecutive words and the value of words of a stored phrase, labelling the matched at least two consecutive words with an overphrase that describes the matched value; after a penultimate word has been compared, recasting the sentence by replacing matched phrases by respective overphrases; and then repeating the step of comparing phrases with the recast sentence until there is no further recasting.