title: preg_replace with cyrillic chars
body: <p>I want to replace these chars [^a-zа-з0-9_] with null, but I can't do it when its multibyte string.</p>
  
  <p>I tried with mb_*, iconv, PCRE, mb_eregi_replace and u modifier (for PCRE), but none of them worked well.</p>
  
  <p>The mb_eregi_replace works, but it only outputs the correct utf8 string, but it doesn't replace the characters, when preg_replace works with the same regex..</p>
  
  <p>Here is my code that works with unicode, but it doesn't replace text.</p>
  
  <pre><code>function _data($data)
  {
    mb_regex_encoding('UTF-8');
    return mb_eregi_replace('/[^a-zа-з0-9_]+/', '', $data);
  }
  
  var_dump(namespace\_data('Текст Removethis- and this _#$)( and also this $*@&amp;$'));
  </code></pre>
  
  <p>and the result is with the special chars (#_$..) when it should replace them, if I change the function to preg_replace (and no unicode) it should replace them.</p>