1273 / 466 / 9
Регистрация: 20.04.2011
Сообщений: 2,012
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15 регулярных выражений PHP в помощь веб-разработчику12.10.2011, 14:31. Показов 18130. Ответов 5
Метки нет (Все метки)
Регулярные выражения – это очень полезный инструмент для разработчиков. С их помощью можно находить, определять или заменять текст, слова или любые другие символы. В сегодняшней статье собраны 15 наиболее полезных регулярных выражений, которые пригодятся любому веб-разработчику. Введение в регулярные выражения Многим начинающим разработчикам кажется, что регулярные выражения очень сложны для понимания и использования. На самом деле, все не так уж сложно, как может показаться. Прежде чем мы непосредственно перейдем к регулярным выражениям, с их полезным и универсальным кодом, давайте взглянем на основы: Синтаксис регулярных выражений
PHP-функции для регулярных выражений
Проверяем, является ли строка правильным доменным именем
Это очень полезное регулярное выражение, с его помощью вы можете найти нужное слово и подсветить его. Особенно полезно для отображения результатов поиска. ?
Как уже говорилось в предыдущем примере, этот пример кода, удобно использовать в выдаче поисковых результатов и есть отличный способ внедрить эту функцию в wordpress-блог. Откройте ваш файл search.php, и найдите функцию the_title(). Замените ее следующим кодом: [PHP]1 echo $title; Теперь, выше этой строки, добавьте этот код: ? <?php $title = get_the_title(); $keys= explode(" ",$s); $title = preg_replace('/('.implode('|', $keys) .')/iu', '<strong class="search-excerpt">\0</strong>', $title); ?> Сохраните файл search.php, и откройте style.css. Добавьте следующую строку:
Если вам когда-нибудь требовалось получить все картинки с веб-страницы, этот код должен быть Вы легко сможете создать загрузчик изображений с помощью возможностей cURL
Во время печатания, часто повторяются слова? Поможет это регулярное выражение.
То же самое, только для пунктуации. Попрощайтесь с двойными запятыми.
Эта простая функция, принимает два аргумента. Первый – это тэг, который вам нужно найти, и второй – это переменная, содержащая XML или HTML. Повторюсь, эту функцию очень удобно использовать вместе с cURL.
Эта функция очень похожа на предыдущую, за исключением того, что вы можете задать тегу нужный атрибут. Например, вы легко сможете найти <div id=”header”>.
Еще один полезный инструмент для веб-разработчика! Он позволяет вам находить/проверять шестнадцатеричные значение цвета.
Этот фрагмент кода найдет и выведет на экран текст, находящийся внутри тэгов <title></title>, на html-странице.
Большинство сайтов запущено на всем известном веб-сервере Apache. Если ваш сайт находится в их числе, почему бы не использовать PHP и регулярные выражения для разбора логов апача?
Если вы любитель типографики, вам понравится это регулярное выражение, заменяющее обычные двойные кавычки, на “умные кавычки”. Похожее регулярное выражение используется в wordpress в контенте страницы. ? 1 preg_replace('B"b([^"x84x93x94rn]+)b"B', '?1?', $text); Комплексная проверка пароля Это регулярное выражение будет следить за тем, чтобы в текстовое поле было введено не менее шести символов, цифры, дефисы и подчеркивания. Текстовое поле должно содержать как минимум один символ верхнего регистра, один нижнего регистра и одну цифру.
Поскольку многие из вас являются пользователями WordPress, вам возможно пригодится код, который позволяет получить все картинки, из текста статьи, и вывести их. Для того, чтобы использовать этот код, просто вставьте его в любой файл вашей темы.
Другая функция, используемая в wordpress – позволяет автоматически заменять символы смайлов на картинку смайла.
Перевод статьи “15 PHP regular expressions for web developers”, автор Jean-Baptiste Jung
3
|
12.10.2011, 14:31 | |
Ответы с готовыми решениями:
5
PHP задача с использованием строк, регулярных выражений и символов Что учить Веб-разработчику? Книга для веб разработчику. Нужна ли (дискретная) математика веб-разработчику? |
1273 / 466 / 9
Регистрация: 20.04.2011
Сообщений: 2,012
|
|
12.10.2011, 16:38 [ТС] | 2 |
не писать флуд
0
|
13208 / 6596 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
|
|
12.10.2011, 17:08 | 3 |
Vlad_AVS, При всём уважении. Что это было?
Первое foo ничего не означает? Строка полностью состоит из «foo». Иначе получается, что и в «lorem ipsum foo dolor» оно тоже только один раз встречается. Маленькая латинская буква. Регистр же не у всех символов есть. И помимо латинских есть и другое буквы, которые сюда не попадут. Аналогично, «кроме большой латинской буквы». Если дефис внутри символьного класса используется для обозначения самого дефиса, то его лучше ставить в самое начало [-0-9.] и [^-0-9.] , чтобы его не нужно было экранировать. В противном случае его необходимо экранировать [0-9.\-], иначе подобная невнимательность рано или поздно обязательно приведет к образованию диапазона и, как следствие, к ненужным символам. Типичная ошибка: [A-z] не то же самое, что [A-Za-z] , ибо между «Z» и «a» есть символы «[», «\», «]», «^», «_», и «`». "Строка полностью представляет собой ровно одно «слово», которое состоит из таких-то символов." Строка начинается на подстроку «A-Za-z0-9». Таблицы на форуме палку съели. (gif|jpg) Содержит строку «gif» или «jpg». [A-Z]{3}|[0-9]{4} Содержит три заглавные латинские буквы вместе или четыре цифры вместе. Разделитель встречается в шаблоне в незаэкранированном виде. PCRE будет ругаться на неизвестный модификатор / . \b, \w, \s, \d и \xHH без экранирования. А причем здесь это? Ошибка синтаксиса PHP. Попрощайтесь вообще со всеми повторяющимися символами. "Деревянный" -> "Деревя.ый" Мне сначало показалось, что речь шла только о PCRE .
2
|
1273 / 466 / 9
Регистрация: 20.04.2011
Сообщений: 2,012
|
|
12.10.2011, 17:11 [ТС] | 4 |
тут немного о том немного о другом
0
|
13208 / 6596 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
|
|
12.10.2011, 17:46 | 5 |
На самом деле здесь просто копипаста в седьмом поколении (т.е. семь раз кописаста копипасты копипасты). Если Вы со всем этим знакомы, у Вас в 10 раз лучше получится написать всё это руками, плюс самообучение-закрепление.
2
|
13208 / 6596 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
|
|
14.10.2011, 18:08 | 6 |
Что-то я наврал немного. Попрощайтесь вообще со всеми символами, кроме "\n": "foo bar\nlorem ipsum" -> ".\n."
1
|
14.10.2011, 18:08 | |
14.10.2011, 18:08 | |
Помогаю со студенческими работами здесь
6
Использование регулярных выражений в GO Синтаксис регулярных выражений Применение регулярных выражений Формула регулярных выражений Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |