Я создаю пользовательский интерфейс администратора, где пользователь может управлять списком строк PCRE, которые передаются в PHP preg_match
в других точках моего приложения.Как я могу определить, является ли данная строка допустимым входом для preg_match PHP?
Перед тем как сохранить вход пользователя для последующего использования preg_match
, я хотел бы сначала подтвердить, что вход пользователя является допустимым выражением PCRE, иначе при передаче его на preg_match
выдается сообщение об ошибке.
Каков наилучший способ проверки данной строки, чтобы узнать, является ли это допустимым PCRE в PHP?
Я не думаю, что 'preg_match' бросил catchable исключение ... позвольте мне попробовать это. Если я ошибаюсь, я чувствую себя застенчивым! – Josh
Кроме того, вы можете использовать 'preg_last_error', чтобы узнать больше об ошибке – scibuff
Да, это не сработает. 'preg_match' не генерирует исключение, оно вызывает' E_WARNING': 'Warning: preg_match(): разделитель не должен быть буквенно-цифровым или обратным слэшем в строке 4'. Это прервет процесс сохранения моего приложения, так как я не могу уловить это предупреждение и возобновить его. – Josh