php - как проверить правильность самого выражения? - PullRequest
5 голосов
/ 20 января 2011

Мне нужно проверить пользовательский ввод, который может быть регулярным выражением для фильтрации полей в его / ее собственном приложении, как я могу проверить правильность этого регулярного выражения?

1 Ответ

4 голосов
/ 20 января 2011

Передать его в фиктивный вызов preg_match() и посмотреть, возвращает ли оно false (указывает на ошибку)?

Примечание :: В зависимости от того, где вы хотите, чтобы это приложениезапустить, я бы поставил под сомнение решение разрешить пользователям делать это.Вы можете настраивать себя на атаку типа «отказ в обслуживании»;все, что нужно сделать злоумышленнику, это предоставить невероятно длинную и сложную строку регулярного выражения, и ваш сервер остановится.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...