Trabalhando com Unicode em expressões regulares no PHP
O modificador u, que você já encontrou
anteriormente, faz a expressão regular funcionar corretamente
com Unicode. Em particular, processa corretamente
strings em cirílico:
<?php
preg_replace('#[а-яё]#u', '!', 'яяя ййй ёёё');
?>