Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Регулировать регулярку!!!
Форумы портала PHP.SU » » Вопросы новичков » Регулировать регулярку!!!

Страниц (1): [1]
 

1. ytrewq123 - 21 Февраля, 2017 - 18:37:50 - перейти к сообщению
Здравствуйте!
Не подскажите, как.
У меня приходит в переменную строка.
Информация [о не известном] предмете.
Eё надо найти в тексте.
То есть в строке есть разные * | ^ служебные символы регулярки.
И по этому регулярное выражение не срабатывает.
Не подскажите как это можно уладить, чтобы регулярка их считала не своими и находила.
2. OrmaJever - 21 Февраля, 2017 - 18:55:06 - перейти к сообщению
экраниировать их \* \| \^ и т.д.
3. Строитель - 21 Февраля, 2017 - 18:56:22 - перейти к сообщению
ytrewq123
PHP:
скопировать код в буфер обмена
  1. $txt = '* | ^ ~';
  2.  
  3. preg_match('~'. preg_quote($txt, '~') .'~iu', $txt);
  4.  


Вторым параметром в preg_quote() можно передвать символы, которые не входят в набор экранируемых по умолчанию (см. мануал)
4. ytrewq123 - 21 Февраля, 2017 - 19:11:38 - перейти к сообщению
Экранировать да, но проходят откуда-то. Только если str_replace();
Строитель пишет:
Вторым параметром в preg_quote()

Биннн точно. Ведь где-то недавно это читал.
Спасибо!!!!

 

Powered by ExBB FM 1.0 RC1