CentOS, PCRE и регистронезависимый поиск
Вчера столкнулся с проблемой: не работал модификатор "i" в регулярном выражении. Этот модификатор отвечает за регистронезависимый поиск..
Вчера столкнулся с проблемой: не работал модификатор "i" в регулярном выражении. Этот модификатор отвечает за регистронезависимый поиск..
Сегодня столкнулся с проблемой, не происходил нужный мне регистронезависимый поиск, а именно не отрабатывало вот это:
1 2 3 4 5 6 7 |
$word='модуль для сетевой игры'; $text='Модуль для сетевой игры '; echo str_replace(Array('.',' '),Array('\.','\s'),trim($word)); if (preg_match('|('.str_replace(Array('.',' '),Array('\.','\s'),trim($word)).')|Usix', $text, $regs)) {} print_r($regs); |
Список констант возвращаемых preg_last_error():
Код - Константа
0 - PREG_NO_ERROR - Ошибок нет
1 - PREG_INTERNAL_ERROR - Внутреняя ошибка
2 - PREG_BACKTRACK_LIMIT_ERROR - Лимит обратных ссылок исчерпан
3 - PREG_RECURSION_LIMIT_ERROR - Лимит рекурсии исчерпан
4 - PREG_BAD_UTF8_ERROR - Ошибка в utf8
5 - PREG_BAD_UTF8_OFFSET_ERROR - Не смог определить смещение в utf8
Представим себе такой случай: есть текст, "Поздравляю всех с Новым, 20 годом"
И мы хотим с помощью preg_replace сделать замену 20 на 2011.
Пишем регулярку: preg_replace('|([0-9]{2})|', '$111', $str);
Чем компилятор приводим в шок, т.к. он не найдет карман с номером 111. Что же делать?
Как регуляркой найти в тексте, неоформленные url и вставить их как ссылку..