Регулярные выражения в PHP и их использование
Язык программирования PHP широко используется в Интернете и, пожалуй, в ближайшее время достойной альтернативы ему не появится. В последнее время наблюдается тенденция интеграции PHP с элементами из других языков, таких как Java, CSS и др., что позволяет создать сайт практически с любым желаемым функционалом. Изучение PHP является одним из важнейших навыков для веб-разработчиков.
Как начинающие, так и опытные программисты рано или поздно начинают использовать такие инструменты, как регулярные выражения PHP – очень удобный инструмент для работы с текстом, с помощью которого можно осуществлять быстрый поиск и замену тех или иных текстовых фрагментов. То есть, это — элемент для сложного манипулирования, который применяется в тех случаях, когда возможностей стандартных функций недостаточно. Работоспособность созданных скриптов всегда можно протестирувать, используя локальный сервер Денвер , установленный на компьютере.
В Сети можно найти регулярные выражения примеры использования которых будут понятны всем, но все же, для их освоения без соответствующей справки и официальной документации точно не обойтись. Поэтому, в этой статье мы приведем один из примеров, который наглядно иллюстрирует ситуации, когда применяются регулярные выражения PHP, и вы сможете понять особенности их применения.
day Строка “ day ”
^day Строка начинается с “day”
day $ Строка заканчивается на “ day”
^day$ - «day» встречается в строке только один раз
[0-9.-] - Любая цифра, точка или знак минус [abc] a, b, или c
Приведем пример синтаксиса регулярных выражений: Такие значения как ‘^’, ‘[]’, ‘$’ и др. являются метасимволами, то есть составляющими элементами языка регулярных выражений. Их нужно просто запомнить, чтобы использовать в случае надобности.
Регулярные выражения — примеры реализации.
Проверка e-mail. Вариант, который может пригодиться многим веб-мастерам: function email_check($email) { if (!preg_match("/^(?:[a-z0-9]+(?:[-_.]?[a-z0-9]+)?@[a-z0-9_.-]+(?:.?[a-z0-9]+)?.[a-z]{2,5})$/i",trim($email))) { return false; } else return true; }
Еще один пример будет на основе функции ereg_replace (), с помощью которой осуществляется замена и возврат переменной с уже произведенными заменами. Как видно, регулярные выражения PHP работают по общему для программирования алгоритму. В случае, если искомое значение не найдено, возвращается исходная строка: string ereg_replace(string pattern, string replacement, string string);
Стоит иметь ввиду, что эта функция является чувствительной к регистру.
Регулярные выражения, примеры проверки доменного имени: if (strlen($domain < 64) && preg_match('/^([0-9a-z]([0-9a-z-])*[0-9a-z].)+[a-z]{2,4}$/i', $domain)) { echo ("domain OK"); } else { echo ("domain wrong"); }
С помощью этого кода осуществляется проверка правильности доменного имени в строке.
Можно привести еще десятки примеров, в которых применяются регулярные выражения PHP и методы их использования в практике программирования. Но лучше всего обучаться на практике, используя в качестве подручного средства соответствующие справочные материалы и профессиональную литературу.