PDA

Просмотр полной версии : обход регулярок с кириллицей


Strilo4ka
09.03.2019, 19:15
Всегда думал что тут регистр не учитывается ))


PHP:
$regex='/'.implode('|',$patt) .'/i';

но, оказывается в кириллице обход


PHP:
$regex='/'.implode('|',$patt) .'/iu';

с модификатором /u ок, тоесть для кириллицы не достаточно /i модификатора


PHP:
$s='Тест';
$r='/тест/i';
if (!preg_match($r,$s)) {
echo')';
}

php 7.1 файл утф8 без бом

с доков


i (PCRE_CASELESS)
Если этот модификатор используется, символы в шаблоне соответствуют символам как верхнего, так и нижнего регистра.


ну вроде очевидная вещь, но на всяких php.su и так далее даже не упоминается об /u,


i - регистронезависимость..


наверно все просто знают об этом, скорее....