<p>I think that  <a href="https://www.amazon.co.uk/Algorithms-Strings-Trees-Sequences-Computational/dp/0521585198/ref=sr_1_1?ie=UTF8&amp;qid=1306332168&amp;sr=8-1" rel="nofollow">Gusfield's book</a> gives a very nice and complete overview of problems and solutions related to string matching. If you're interested in meaning too, you should have a look at what natural language processing has to offer (I cannot recommend a specific reference in that field, but Google will certainly help you).</p>

CC BY-SA 3.0
2011-07-07T14:57:43.550Z
2011-07-07T14:57:43.550Z
Anthony Labarre
<p>In terms of searching by text meaning, arguably the most advanced search apparatus is IBM's Watson.  There is a lot of information <a href="http://www-03.ibm.com/innovation/us/watson/?cn=agus_watson-20100712&amp;cm=k&amp;csr=google&amp;cr=ibm_watson&amp;ct=USJWK002&amp;S_TACT=USJWK002&amp;ck=ibm_watson&amp;cmp=00000&amp;mkwid=s2pC4lYkI_9199313973_432n0d3749" rel="nofollow">here</a>.  They don't keep a databse of meanings.  Rather, they search for answers to questions where the information of the answer is arranged so that it has a high probability of corresponding to the information of the question.  So they don't assume they know the meaning of either the question or the answer; the objective is to look for a likely connection.</p>

CC BY-SA 3.0
2011-07-07T16:25:36.017Z
2011-07-07T16:25:36.017Z
Aaron Sterling
<p>Perhaps Apache's Lucene?  <a href="http://lucene.apache.org/java/docs/features.html" rel="nofollow">http://lucene.apache.org/java/docs/features.html</a>  It must implement the algorithms you are looking for and in a way that scales.</p>

CC BY-SA 3.0
2011-07-13T00:16:03.910Z
The question is not asking for implementations but for algorithms.
Kaveh
CC BY-SA 3.0
2011-07-13T13:20:20.307Z
Sorry.. I should have been more explicit in my statement.  I meant that it's a good place to see an inventory of common algorithms and their implementations since the source is available and well documented.
unclejamil
CC BY-SA 3.0
2011-07-07T16:04:41.587Z
2011-07-07T16:04:41.587Z
unclejamil
<p>What algorithms do you know regarding text analyze/processing? Detailed, I need to "find out" the most used words, sentences, words' combinations, their category etc (these are just examples, moreover I need very strong mechanism to process a large text). Also need an intellectual searching by text "meaning", if that's possible.</p>

<p>Have you ever met with such kind problems, can you advice me and provide information to look for to find out/investigate more about this?</p>

<p>Thank you.</p>

CC BY-SA 3.0
2011-07-07T17:04:54.953Z
This question is a bit too open-ended, especially for an area as large as text analysis. I recommend closing.
Suresh Venkat
<string-matching><string-search>
Text Analyze and Processing
Dehumanizer
# Text Analyze and Processing

(Asked by: username_0 on 2011-07-07)

What algorithms do you know regarding text analyze/processing? Detailed, I need to "find out" the most used words, sentences, words' combinations, their category etc (these are just examples, moreover I need very strong mechanism to process a large text). Also need an intellectual searching by text "meaning", if that's possible.

Have you ever met with such kind problems, can you advice me and provide information to look for to find out/investigate more about this?

Thank you.

**Tags:** string-matching, string-search
> **Comments:**
> **username_1**: This question is a bit too open-ended, especially for an area as large as text analysis. I recommend closing.  

---

## 3 answers

### Answer by username_2 on 2011-07-07. Score: 2

I think that [Gusfield's book](https://www.amazon.co.uk/Algorithms-Strings-Trees-Sequences-Computational/dp/0521585198/ref=sr_1_1?ie=UTF8&qid=1306332168&sr=8-1) gives a very nice and complete overview of problems and solutions related to string matching. If you're interested in meaning too, you should have a look at what natural language processing has to offer (I cannot recommend a specific reference in that field, but Google will certainly help you).


---

### Answer by username_3 on 2011-07-07. Score: 1

In terms of searching by text meaning, arguably the most advanced search apparatus is IBM's Watson. There is a lot of information [here](http://www-03.ibm.com/innovation/us/watson/?cn=agus_watson-20100712&cm=k&csr=google&cr=ibm_watson&ct=USJWK002&S_TACT=USJWK002&ck=ibm_watson&cmp=00000&mkwid=s2pC4lYkI_9199313973_432n0d3749). They don't keep a databse of meanings. Rather, they search for answers to questions where the information of the answer is arranged so that it has a high probability of corresponding to the information of the question. So they don't assume they know the meaning of either the question or the answer; the objective is to look for a likely connection.


---

### Answer by username_4 on 2011-07-07. Score: 0

Perhaps Apache's Lucene? <http://lucene.apache.org/java/docs/features.html> It must implement the algorithms you are looking for and in a way that scales.

> **Comments:**
> **username_5**: The question is not asking for implementations but for algorithms.  
> **username_4**: Sorry.. I should have been more explicit in my statement.  I meant that it's a good place to see an inventory of common algorithms and their implementations since the source is available and well documented.  

---

