title: Text pre-processing for approximate multiple keyword matches
body: <p>We are working on importing large quantities of resumes pre-tagging them with 
   keywords depending on certain patterns found in the text block (averaging about 3500 words per resume).</p>
  
  <p>For example, If the block of text contains "codeigniter" or "codeignitor" or "code igniter" or "code ignitor", it should consider the original word to be "codeigniter" (defined in some sort of rules) and then we will be tagging the row to contain that keyword (codeigniter).</p>
  
  <p>I'm thinking something along the lines of :</p>
  
  <pre><code>$rules = array(
      "keywords" =&gt; array("codeigniter","php","mysql"),
      "match_relevance" =&gt; 0.8
  );
  
  $text_analysis = $search_lib-&gt;search($rules,$text_block);
  </code></pre>
  
  <p>and then text analysis would return :</p>
  
  <pre><code>print_r($text_analysis);
  
  array(
      "codeigniter" =&gt; 8,
      "mysql" =&gt; 4
  )
  </code></pre>
  
  <p>the above might be a gross over-simplification of the way it can be done but I am looking for some direction on how this can be achieved in a relatively similar way.</p>
  
  <p>The solution need not be specific to any programming language. (can be php, python etc)</p>
  
  <p>I know I could achieve the similar results using other techniques such as fulltext search or other search engines such as (Sphinx, Solr, Lucene etc.) but this use case specifically requires the text to be pre-processed since <strong>we are looking to tag the records.</strong></p>