title: String searching algorithms in Java
body: <p>I am doing string matching with big amount of data. </p>
  
  <p>EDIT: I am matching words contained in a big list with some ontology text files. I take each file from ontology, and search for a match between the third String of each file line and any word from the list.</p>
  
  <p>I made a mistake in overseeing the fact that what I need to do is not pure matching (results are poor), but I need some looser matching function that will also return results when the string is contained inside another string. </p>
  
  <p>I did this with a <a href="http://patricia-trie.googlecode.com/svn/trunk/src/main/java/org/ardverk/collection/PatriciaTrie.java" rel="nofollow noreferrer">Radix Trie</a>; it was very fast and works nice, but now I guess my work is useless because a trie returns only exact matches.  :/</p>
  
  <ul>
  <li><em>Type of algorithms that do this are string searching algorithms?</em></li>
  <li>Can somebody suggest some Java implementations that he has experience with? </li>
  </ul>
  
  <p>The algorithm should be fast, but is not top top priority, would compomise with speed &amp; complexity.</p>
  
  <p>I am very grateful for all advice/examples/explanations/links!</p>
  
  <p>Thank you!</p>