Александр801
21.01.2017 - 12:37
Есть условие:
if (mb_strlen($tel)>5 && !preg_match("/http/", $vopros) && !preg_match("/Яндекс/", $vopros) && !preg_match("/прогон/", $vopros))
как правильно написать, что в переменной $vopros не содержится следующие слова http, Яндекс, прогон.
И как сделать так, чтобы регистр букв не учитывался?
Игорь_Vasinsky
21.01.2017 - 12:49
| - логическое "или" в regexp
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
preg_matchСимвол "i" после закрывающего ограничителя шаблона означает регистронезависимый поиск.
(a|b) a or b
_____________
Принимаю заказы, писать в ЛС
Александр801
21.01.2017 - 13:09
Цитата (Миша @ 21.01.2017 - 12:50) |
preg_match
Символ "i" после закрывающего ограничителя шаблона означает регистронезависимый поиск.
(a|b) a or b |
то есть так?
if (mb_strlen($tel)>5 && !preg_match("/http/i" | "/яндекс/i" | "/прогон/i" , $vopros)
Синтаксис регулярных выраженийРегулярные выражения для самых маленькихСимвол "i" после закрывающего ограничителя шаблона -
Разделители
_____________
Принимаю заказы, писать в ЛС
Игорь_Vasinsky
21.01.2017 - 13:29
/ - это ограничители паттерна
нужно всего 2 - открыть и закрыть
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Александр801
21.01.2017 - 13:33
Теперь понял
if (mb_strlen($tel)>5 && !preg_match("/(http|яндекс|прогон)/i" , $vopros)
Остался только вопрос с регистром, все равно пропускает слово "Яндекс"
"/(http|яндекс|прогон)/ui"
_____________
Принимаю заказы, писать в ЛС
Александр801
21.01.2017 - 13:51
Цитата (Миша @ 21.01.2017 - 13:38) |
"/(http|яндекс|прогон)/ui" |
Супер! Спасибо.
А как сделать проверку не только в одной переменной?
Только так:
if (!preg_match("/(http|яндекс|прогон)/ui" , $vopros) && !preg_match("/(http|яндекс|прогон)/ui" , $otziv))
Игорь_Vasinsky
21.01.2017 - 14:58
так и есть
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Александр801
21.01.2017 - 14:59
Цитата (Игорь_Vasinsky @ 21.01.2017 - 14:58) |
так и есть |
Спасибо! Очень помогли
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.