1. A system for analyzing of a plurality of texts, the system comprising: A) a plurality of keywords stored in a non-transitory computer readable structure, each keyword of said plurality of keywords stored as a respective site of a plurality of sites, said structure including a plurality of branches, each branch having plurality of sub branches, a unique ordered combination of a branch and one or more sub branches leading to each said respective site; each branch of said plurality of branches and each sub branch of said plurality of sub branches being associated with one respective character string, each said keyword being the ordered combination of respective character strings associated with the unique ordered combination of branch and sub branches leading to said respective site and each branch of said plurality of branches being included in more than one said unique combination of a branch and one or more sub branches leading to more than one respective site; B) a plurality of databases including a respective database corresponding to each text of the plurality of texts; each said respective database including a plurality of counters including a respective incidence corresponding to each of said plurality of keywords; C) a computer configured for said analyzing text of said plurality of texts including a) reading a current character string from said one text starting at a start character and selecting from said plurality of branches a current branch associated with said character string, b) recursively navigating said structure according to said one text subsequent to said first character string; said recursively navigating including, i) further reading from said one text a sequential character string sequential to said current character string, ii) selecting from a plurality of sub branches of said current branch, a next branch associated with said sequential character string and iii) replacing said current character string with said sequential character string and replacing said current branch with said next branch and repeating said further reading and said selecting and said replacing until a current branch leads to an encountered site of said plurality of sites, c) incrementing in said respective database of said one text said respective incidence counter of a keyword when said keyword is found in said text starting at said start character by incrementing in said respective database of said one text said respective incidence counter of a keyword stored as said encountered site, e) designating a new start character in the one text and repeating said reading, said navigating, said incrementing and f) repeating said designating until for each of said plurality of keywords, said respective incidence counter indicates the number of times that said keyword appears in the one text; D) a plurality of score buffers including at least one respective score buffer for each said text; each said score buffer storing a computer modifiable value; and wherein said computer is further configured for updating said value stored in a respective score buffer for said one text dependent on a limitation on a value of said respective incidence counter of at least two of said plurality of keywords E) a rule counter and wherein said computer is further configured to set a value said rule counter dependent on at least two of said incidence counters, and wherein said updating is dependent on a value of said of rule counter.