Данная функция ищет в строке str соответствие регулярному выражению, заданному в шаблоне pattern. Если соответствия подвыражений с шаблоном будут найдены, то они сохраняются в массиве соответствий regs. При этом $regs[0] содержит копию строки string, $regs[l] - подстроку, начинающуюся с первой сохраняющей скобки, $regs[2] - подстроку, начинающуюся со второй сохраняющей скобки и т. д.
Данная задача решается в первой части книги Дж. Фридла "Регулярные выражения", который на протяжении нескольких страниц демонстрирует различные подводные камни при создании универсального регулярного выражения, постепенно подводя читателя к мысли, что необходимо искать "компромисс между сложностью и точностью" регулярного выражения.
Форма в листинге содержит четыре текстовых поля: name - для имени посетителя, password- для его пароля, email - для адреса электронной почты и uri - для ссылки на ресурс, текстовую область message для ввода сообщения и кнопку send для отправки данных обработчику handler.php, код которого представлен в листинге 5.3.
В HTML-формах Web-приложений часто требуется ввод чисел. Кроме того, практически все Web-приложения, имеющие в своей основе базу данных, передают первичные ключи через строку запроса. Например, URL
http://www.softtime.ru/forum/read.php?id_forum=l&id_theme=495
содержит два числовых параметра: idforum и id_theme, которые принимают значения 1 и 4 95 соответственно. Дотошные посетители страницы могут попытаться присвоить этим параметрам совершенно другие значения, а то и подставить вместо цифр текст с SQL-инъекцией (см. гл. 9). Поэтому все числовые параметры следует проверять - они должны содержать только цифры от 0 до 9 (листинг 5.4).