Автор неизвестен - Регулярные выражения для фронтендеров
Название: | Регулярные выражения для фронтендеров | |
Автор: | Автор неизвестен | |
Жанр: | Учебники и самоучители по компьютеру | |
Изадано в серии: | неизвестно | |
Издательство: | неизвестно | |
Год издания: | 2021 | |
ISBN: | неизвестно | |
Отзывы: | Комментировать | |
Рейтинг: | ||
Поделись книгой с друзьями! Помощь сайту: донат на оплату сервера |
Краткое содержание книги "Регулярные выражения для фронтендеров"
Аннотация к этой книге отсутствует.
Читаем онлайн "Регулярные выражения для фронтендеров". [Страница - 2]
- 1
- 2
- 3
- 4
- . . .
- последняя (12) »
«плавающими»
(неизвестными) данными. Самая распространенная
задача — найти в тексте ссылки и адреса электронной
почты и сделать их кликабельными.
— Валидация данных формы и ограничение ввода.
Например, валидация номера телефона, электронной
почты, данных паспорта гражданина РФ и других данных.
— Получение части строки или формирование новых
структур данных из строк с «плавающими»
разделителями. Найти количество вхождений ключевых
слов в тексте без учета падежных окончаний, составить
из них массив с данными для дальнейшего использования
в инфографике.
Первая и вторая задачи в целом очень похожи и отличаются
лишь тем, что в одном случае придётся писать регулярное
выражение под готовый текст, а во втором, наоборот, текст под
готовое регулярное выражение.
Основные термины
В контексте нашего курса мы будем использовать некоторые
термины, которые в других языках программирования и
технологиях могут иметь иное значение:
Строка — любой текст, включающий или не включающий в себя
символы перевода строки.
Подстрока — любая часть строки.
Паттерн, правило, шаблон, выражение — это часть или всё
регулярное выражение целиком. В русскоязычной среде
программисты также используют выражение «регулярка». В
англоязычных источниках могут встречаться сокращения RegEx
или RegExp , но это всё об одном и том же.
Селекторы — именно так будут в нашем курсе называться части
паттернов, из которых мы будем составлять регулярные
выражения.
Матчить текст — применить к строке правило регулярного
выражения с целью определения совпадения.
Мы только-только начинаем знакомиться с регулярными
выражениями, но уже написали первый паттерн. Далее
разберём, как работает поиск внутри самого выражения,
движения вперёд и возвраты.
1.2. Движение паттернов и возвраты
Мы обозначили круг задач, но ещё ни слова не сказали о
построении регулярных выражений (паттернов) и о том, как они
работают.
Давайте составим первый паттерн и попробуем найти
ее
средствами регулярных выражений:
/ее/.test('Быстрее всего мы догоним ее на машине'); // вернё
Первое, на что стоит обратить внимание из нашего примера: в
JavaScript регулярное выражение пишется между двух слэшей:
/{{селектор}}/ . Текст внутри выражения называют литералами,
а специальные символы, добавляющие функционал выражению
— метасимволами.
Второе, селектор может
предложением или строкой:
совпадать
с
целым
словом,
/Быстрее всего/.test('Быстрее всего мы догоним ее на машине'
«
Можно использовать регулярные выражения для поиска
подстроки в строке, но это не самое эффективное решение.
Мы поговорим об этом в следующих главах.
Здесь стоит остановиться и разобрать паттерн /ее/ , ведь это не
единое слово в его общем понимании, а набор из двух
символьных
селекторов,
следующих
в
определённой
последовательности.
Регулярное выражение, если намеренно не задан другой
порядок, будет последовательно перебирать символы строки
слева направо и искать первое совпадение с первым селектором
паттерна — е :
Когда будет найдено совпадение с первым селектором, не меняя
позиции и не возвращаясь к началу строки, механизм поиска
попробует сравнить следующий символ строки со следующим
селектором. Если и второй символ совпадёт, то на этом поиск
закончится.
Но что произойдет, если не будет совпадения? Механизму
придётся вернуться к первому селектору и продолжить искать
совпадение с позиции, на которой он в данный момент
находится.
Немного изменим строку поиска:
/ее/.test('Всего быстрее мы догоним ее на машине');
В нашем случае первое совпадение первого селектора е
произойдёт на слове всего . Затем механизм поиска перейдёт на
одну позицию вперед и попробует сопоставить второй селектор
е — а там буква г , которая не совпадает. Чтобы отбросить это
несовпадение и продолжить поиск дальше, придётся вернуться
на одну позицию назад и вернуться к первому селектору. Этот
механизм в регулярных выражениях называется возврат.
В зависимости от сложности текстовой строки и сложности
паттерна, возвраты могут происходить не только к селектору, но
и к начальной позиции строки. Чем больше (длиннее) само
регулярное выражение и чем чаще оно двигается назад, тем
больше сохраняет позиций в памяти. --">
(неизвестными) данными. Самая распространенная
задача — найти в тексте ссылки и адреса электронной
почты и сделать их кликабельными.
— Валидация данных формы и ограничение ввода.
Например, валидация номера телефона, электронной
почты, данных паспорта гражданина РФ и других данных.
— Получение части строки или формирование новых
структур данных из строк с «плавающими»
разделителями. Найти количество вхождений ключевых
слов в тексте без учета падежных окончаний, составить
из них массив с данными для дальнейшего использования
в инфографике.
Первая и вторая задачи в целом очень похожи и отличаются
лишь тем, что в одном случае придётся писать регулярное
выражение под готовый текст, а во втором, наоборот, текст под
готовое регулярное выражение.
Основные термины
В контексте нашего курса мы будем использовать некоторые
термины, которые в других языках программирования и
технологиях могут иметь иное значение:
Строка — любой текст, включающий или не включающий в себя
символы перевода строки.
Подстрока — любая часть строки.
Паттерн, правило, шаблон, выражение — это часть или всё
регулярное выражение целиком. В русскоязычной среде
программисты также используют выражение «регулярка». В
англоязычных источниках могут встречаться сокращения RegEx
или RegExp , но это всё об одном и том же.
Селекторы — именно так будут в нашем курсе называться части
паттернов, из которых мы будем составлять регулярные
выражения.
Матчить текст — применить к строке правило регулярного
выражения с целью определения совпадения.
Мы только-только начинаем знакомиться с регулярными
выражениями, но уже написали первый паттерн. Далее
разберём, как работает поиск внутри самого выражения,
движения вперёд и возвраты.
1.2. Движение паттернов и возвраты
Мы обозначили круг задач, но ещё ни слова не сказали о
построении регулярных выражений (паттернов) и о том, как они
работают.
Давайте составим первый паттерн и попробуем найти
ее
средствами регулярных выражений:
/ее/.test('Быстрее всего мы догоним ее на машине'); // вернё
Первое, на что стоит обратить внимание из нашего примера: в
JavaScript регулярное выражение пишется между двух слэшей:
/{{селектор}}/ . Текст внутри выражения называют литералами,
а специальные символы, добавляющие функционал выражению
— метасимволами.
Второе, селектор может
предложением или строкой:
совпадать
с
целым
словом,
/Быстрее всего/.test('Быстрее всего мы догоним ее на машине'
«
Можно использовать регулярные выражения для поиска
подстроки в строке, но это не самое эффективное решение.
Мы поговорим об этом в следующих главах.
Здесь стоит остановиться и разобрать паттерн /ее/ , ведь это не
единое слово в его общем понимании, а набор из двух
символьных
селекторов,
следующих
в
определённой
последовательности.
Регулярное выражение, если намеренно не задан другой
порядок, будет последовательно перебирать символы строки
слева направо и искать первое совпадение с первым селектором
паттерна — е :
Когда будет найдено совпадение с первым селектором, не меняя
позиции и не возвращаясь к началу строки, механизм поиска
попробует сравнить следующий символ строки со следующим
селектором. Если и второй символ совпадёт, то на этом поиск
закончится.
Но что произойдет, если не будет совпадения? Механизму
придётся вернуться к первому селектору и продолжить искать
совпадение с позиции, на которой он в данный момент
находится.
Немного изменим строку поиска:
/ее/.test('Всего быстрее мы догоним ее на машине');
В нашем случае первое совпадение первого селектора е
произойдёт на слове всего . Затем механизм поиска перейдёт на
одну позицию вперед и попробует сопоставить второй селектор
е — а там буква г , которая не совпадает. Чтобы отбросить это
несовпадение и продолжить поиск дальше, придётся вернуться
на одну позицию назад и вернуться к первому селектору. Этот
механизм в регулярных выражениях называется возврат.
В зависимости от сложности текстовой строки и сложности
паттерна, возвраты могут происходить не только к селектору, но
и к начальной позиции строки. Чем больше (длиннее) само
регулярное выражение и чем чаще оно двигается назад, тем
больше сохраняет позиций в памяти. --">
- 1
- 2
- 3
- 4
- . . .
- последняя (12) »
Книги схожие с «Регулярные выражения для фронтендеров» по жанру, серии, автору или названию:
Бен Форта - Освой самостоятельно регулярные выражения. 10 минут на урок Жанр: Другие языки и системы программирования Год издания: 2005 Серия: Освой самостоятельно |
Другие книги автора « Автор неизвестен»:
Автор неизвестен - Пилипка-сынок Жанр: Сказки для детей Серия: Белорусская сказка |
Автор неизвестен - Волшебная тыква Жанр: Сказки для детей Серия: Вьетнамская сказка |