title: Look ahead and look behind not working for quanteda dictionary
body: <p>I am trying to set up a quanteda dictionary which contains many overlapping terms. I believe using regex look ahead/look behind could be a way to solve this and avoid false hits, but I must be doing something wrong.</p>
  
  <pre><code>text &lt;- c("guinea", "equatorial guinea", "guinea bissau")
  dict &lt;- dictionary(list(guinea="guinea"))
  dfm &lt;- dfm(text, dictionary=dict, valuetype="regex")
  colSums(dfm)              
  dict2 &lt;- dictionary(list(guinea="(?&lt;!equatorial[[:space:]])guinea"))
  dfm2 &lt;- dfm(text, dictionary=dict2, valuetype="regex")
  colSums(dfm2)
  dict3 &lt;- dictionary(list(guinea="guinea(?![[:space:]]bissau)"))
  dfm3 &lt;- dfm(text, dictionary=dict3, valuetype="regex")
  colSums(dfm3)
  </code></pre>
  
  <p>Expected results should be</p>
  
  <pre><code># dfm1
  colSums(dfm1)
  guinea 
       3 
  # dfm2
  colSums(dfm2)
  guinea 
       2
  # dfm3 
  colSums(dfm3)
  guinea 
       2 
  </code></pre>
  
  <p>But actual results are all = 3
  Is this an issue with the look ahead/behind or with how the blank space is inserted?</p>