Регулярные выражения: различия между версиями

Материал из Поле цифровой дидактики
(Новая страница: «{{Понятие |Description=Регуля́рные выраже́ния (англ. regular expressions, жарг. регэ́кспы или ре́гексы или регулярки) — система обработки текста, основанная на специальной системе записи шаблонов для поиска. |Environment=Perl, PHP, Python, Notepad++ }} Сейчас регулярные выражения испол...»)
 
Строка 1: Строка 1:
{{Понятие
{{Понятие
|Description=Регуля́рные выраже́ния (англ. regular expressions, жарг. регэ́кспы или ре́гексы или регулярки) — система обработки текста, основанная на специальной системе записи шаблонов для поиска.
|Description=Регуля́рные выраже́ния (англ. regular expressions, жарг. регэ́кспы или ре́гексы или регулярки) — система обработки текста, основанная на специальной системе записи шаблонов для поиска.
|Field_of_knowledge=Информатика, Лингвистика, Большие данные
|Environment=Perl, PHP, Python, Notepad++
|Environment=Perl, PHP, Python, Notepad++
}}
}}
Сейчас регулярные выражения используются многими текстовыми редакторами и утилитами для поиска и изменения текста на основе выбранных правил. Многие языки программирования уже поддерживают регулярные выражения для работы со строками. Например, [[Perl]] и [[Tcl]] имеют встроенный в их синтаксис механизм обработки регулярных выражений. Набор утилит (включая редактор [[sed]] и фильтр grep), поставляемых в дистрибутивах [[Unix]], одним из первых способствовал популяризации понятия регулярных выражений.
Сейчас регулярные выражения используются многими текстовыми редакторами и утилитами для поиска и изменения текста на основе выбранных правил. Многие языки программирования уже поддерживают регулярные выражения для работы со строками. Например, [[Perl]] и [[Tcl]] имеют встроенный в их синтаксис механизм обработки регулярных выражений. Набор утилит (включая редактор [[sed]] и фильтр grep), поставляемых в дистрибутивах [[Unix]], одним из первых способствовал популяризации понятия регулярных выражений.
На практике процессор регулярных выражений выполняет поиск по шаблону не для одного фрагмента, а для множества фрагментов, которые составляют входящий текст. Разбиение на фрагменты большого текста, позволяет процессору регулярных выражений разумно расходовать ресурсы компьютера, так как текст может быть очень большим для обработки его целиком. Не вдаваясь в детали реализации, процессор мог бы разбивать большой текст на фрагменты ориентируясь на символ переноса строки. Таким образом, процессор строка за строкой пытается найти искомые результаты во фрагментах, причем каждый отдельный фрагмент это отдельная по времени вызываемая процедура, результат которой никак не оказывает влияния на предыдущие или последующие результаты. Понимание этого важно, когда вы столкнетесь с конкретными реализациями процессоров регулярных выражений.

Версия 20:30, 26 февраля 2024


Описание Регуля́рные выраже́ния (англ. regular expressions, жарг. регэ́кспы или ре́гексы или регулярки) — система обработки текста, основанная на специальной системе записи шаблонов для поиска.
Область знаний Информатика, Лингвистика, Большие данные
Авторы
Поясняющее видео
Близкие понятия
Среды и средства для освоения понятия Perl, PHP, Python, Notepad++

Сейчас регулярные выражения используются многими текстовыми редакторами и утилитами для поиска и изменения текста на основе выбранных правил. Многие языки программирования уже поддерживают регулярные выражения для работы со строками. Например, Perl и Tcl имеют встроенный в их синтаксис механизм обработки регулярных выражений. Набор утилит (включая редактор sed и фильтр grep), поставляемых в дистрибутивах Unix, одним из первых способствовал популяризации понятия регулярных выражений.

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