<MyRusakov.ru />

Создание движка на PHP и MySQL 2.0

Создание движка на PHP и MySQL 2.0

Видеокурс "Создание движка на PHP и MySQL 2.0" научит Вас создавать профессиональные движки для сайтов на PHP и MySQL с использованием ООП и паттерна MVC.

В курсе разобрана вся теория по структуре движка: как всё устроено, какие должны быть объекты, какая у них иерархия и как они взаимодействуют между собой.

В практической части будет создан движок с чистого листа. Будет создано ядро, все адаптеры, все вспомогательные классы, а также классы для работы с объектами базы данных. И чтобы курс был максимально полезным, будет создан движок для сайта MyRusakov.ru.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Метасимволы в регулярных выражений

Метасимволы в регулярных выражений

Начиная с этой статьи мы с Вами будем учиться составлять регулярные выражения. Я уже писал, что регулярное выражение состоит из трёх частей: метасимволов, квантификаторов и спецсимволов. И в этой статье мы с Вами разберём метасимволы в регулярных выражениях.

Давайте приведу таблицу с метасимволами, используемых в регулярных выражениях:

Метасимвол Что делает
. Соответствует одному любому символу.
^sym Соответствует строке, которая начинается с последовательности sym.
sym$ Соответствует строке, которая заканчивается с последовательности sym.
a1|a2|a3 Этот метасимвол соответствует любой последовательности символов, разделяемых им. В данном случае, соответствие будет, если строка будет содержать a1, либо a2, либо a3.
[a-zA-Z] Соответствует любому символу (либо символу из заданного диапазона, как в примере). Все символы должны идти без знаков разделения (например, abcdef). Обратите внимание, что данный метасимвол соответствует одному символу!
[^a-zA-Z] Противоположность предыдущему метасимолу. То есть соответствие будет тогда, когда проверяемый символ не будет перечислен в указанной последовательности символов (либо диапазоне).
(.[a-z]) Круглые скобки служат для выделения определённых частей регулярного выражения. Они называются "карманами" или "субпаттернами", о которых я бегло упомянул в прошлой статье. Важнейший метасимвол, значение которого Вы поймёте позже.

Теперь давайте закрепим материал по данным метасимволам:

/^abc([0-9])[^a]./

Обратите внимание, что в начале и конце регулярного выражения должен находиться один и тот же символ. Это может быть любой символ (за исключением некоторых). Но по традиции используют символ "/", иногда "#". То есть в начале и конце регуярного выражения должен стоять этот выбранный символ (повторяю, что это может быть практически любой символ, который только означает начало и конец регулярного выражения).

Переведу регулярное выражение в примере на русский язык. Строка, которая "начинается с abc, далее идёт любая цифра, далее идёт любой символ, кроме "a", а затем вообще любой символ", будет соответствовать регулярному выражению, написанному выше. Более того, цифру мы выделили в круглые скобки, соответственно она попадёт в "карман".

Пример строки, которая будет соответствовать данному регулярному выражению: "abc59x" (строка "abc59x_и_далее_неважно_что" также будет соответствовать). А в субпаттерн ("карман") попадёт цифра 5.

Пока всё, переваривайте эту информацию, практикуйтесь в написании своих регулярных выражениях, а завтра будет статья по квантификаторам в регулярных выражениях, которые расширяют возможности по их написанию.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (4):

lev_100rus lev_100rus 28.10.2012 00:08:39

Михаил, у вас ошибка в таблице, в предложении ("Соответствует любому символу (либо символу из заданного диапазона, как в приимере). ") У вас слово "приимере" написано с 2 буквами "и"

Ответить

Admin Admin 28.10.2012 18:34:35

Спасибо, исправил.

Ответить

Onaibek Onaibek 06.05.2016 21:43:38

/^abc([0-9])[^a]./ для чего здесь () - скобки нужны ? ведь и без них все работает. Я суть их не понял для чего они служат ?

Ответить

supercep supercep 08.06.2016 23:03:34

Читайте внимательно. Скобки-это карман. Без них конструкция [0-9] воспринимается для проверки одного символа, т.е, чтобы строго на этом месте была цифра 0-9, и после-уже след. конструкция. А с карманом ([0-9]) допускается после цифры любая последовательность символов

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.