Редовни изрази Notepad: Описание, Замяна и Примери

Редовен израз Notepad е формална езикова теория, поредица от символи, която определя модел на търсене. Обикновено този шаблон се използва от алгоритмите за търсене на низ за "намиране" или "намиране и замяна" на операции в редове. Но нека погледнем всичко по ред и да разгледаме тази тема по-подробно.

Описание на принципа на регулярните изрази

Концепцията възниква през 50-те години на миналия век, когато американският математик Стивън Коул Клини формализира описанието на обикновения език. Тази концепция е широко използвана с помощни програми за обработка на текстове на Unix. От 1980-те години съществуват различни синтаксиси за регулярни изрази, единият от които е стандартът POSIX, а друг често използван е синтаксисът на Perl.
Редовните изрази на Notepad се използват от търсачките за намиране и замяна на диалози между текстообработващи и текстови редактори, текстообработващи програми като sed и AWK и лексикален анализ. Много езици за програмиране осигуряват регулярни изрази, вградени или чрез библиотеки.


Как да премахнем празни редове в регулярни изрази на Notepad?

Терминът "регулярни изрази" често се използва за обозначаване на специфичен стандартен текстов синтаксис (различен от математическата нотация, описана по-долу) за представяне на шаблони, които трябва да бъдат в съответствие с текста. Всеки символ в нормален израз се разбира като метасимвол (със своето специално съдържание) или с редовен характер (със своето буквално значение). заеднометасимволи и буквено-цифрови знаци могат да се използват за идентифициране на текстовия материал на даден шаблон или за обработка на множество копия.


Моделите могат да варират от точно равенство до общо сходство, контролирани метасимволи. Синтаксисът на метасимвола е специално проектиран да представя определени цели в сбита и гъвкава форма на автоматизация на обработката на текст от различни входове. Той е удобен за въвеждане с помощта на стандартната ASCII клавиатура.

Редовен израз на Notepad: Примери и шаблони

Редовен израз, често наричан шаблон, е израз, използван за указване на набора от низове, необходими за определена цел. По прост начин посочете крайния набор от редове от списъка на елементите му. Въпреки това, често има по-кратки начини за посочване на необходимия набор от низове. Например, набор, съдържащ три линии - Handel, H История на появата
Редовните изрази се появяват през 1951 г., когато математикът Стивън Коул Клини описва обикновените езици, използвайки математическа нотация наречена редовни множества. Те възникват в теоретичните компютърни науки, вподполета на теорията на автомата (модел на изчисление), описание и класификация на официалните езици. Другите внедрявания на внедряване на модела включват езика SNOBOL, който използва нерегулярни изрази и неговите собствени проекти, съответстващи на шаблона.
Поредицата Notepad е широко използвана в регулярните изрази от 1968 г. за две цели: извадково съвпадение в текстов редактор и лексикален анализ в компилатора. Сред първите случаи на регулярни изрази в програмната форма е, че Кен Томпсън е построил записа Клайн в QED редактора като инструмент за картографиране на шаблони в текстови файлове. За бързина, Томпсън осъществи сравнение на регулярни изрази, използвайки компилацията "точно време" (JIT) към кода на IBM 7094 в система от съвместимо време - важен ранен пример за компилиране на JIT. По-късно той добавя тази функция към редактора на Unix ed, което в крайна сметка доведе до използването на популярния инструмент за търсене на grep за използване на регулярни изрази. Приблизително по същото време, когато Томпсън разработва QED, група изследователи, включително Дъглас Рос, въвеждат инструмент, базиран на редовни изрази, които се използват за лексикален анализ при проектирането на компилатора.

Развитие на концепцията

Много варианти на тези оригинални форми на замяна на регулярни изрази на Notepad са били използвани в програмите на Unix в Bell Labs през 70-те години, включително vi, lex, sed, AWK и expr, както и в други комунални услуги като Emacs , Впоследствие тези форми бяха приети от широк спектър от програми и бяха включени в стандарт POSIX.2 през 1992 г.
През 80-те години на ХХ век, по-сложниРедовни изрази се появяват в Perl, който първоначално е извлечен от библиотеката на регулярния израз, написана от Henry Spencer (1986). По-късно той написа изпълнението на разширени редовни изрази за Tcl. Tcl библиотеката е хибридно изпълнение на NFA /DFA с подобрени характеристики на изпълнение.
Софтуерните проекти, които използват реализацията на регулярния израз Spencer Tcl, включват PostgreSQL. По-късно Perl се разшири до изходната библиотека на Spencer, за да добави много нови функции, но все още не е приложил разширени регулярни изрази на Spencer по отношение на производителността или обработката на Unicode. Част от усилията за разработване на Perl 6 е да се подобри интеграцията на регулярните изрази и да се увеличат техните възможности, позволявайки да се определи анализът на граматичните изрази.
Резултатът е мини-език, наречен Perl 6 правила, които се използват за дефиниране на граматика, и също така осигуряват инструмент за програмисти на този език. Тези правила поддържат съществуващите функции на регулярните изрази.

Етапът на съвременното развитие

Използването на регулярни изрази на Notepad в търсенето и стандартите за структурирана информация за моделиране на документи и бази данни започнаха през 60-те години и се разпространиха през 80-те години на миналия век, когато консолидираха индустриални стандарти като ISO SGML. Ядрото на структурата на стандартната езикова спецификация се състои от регулярни изрази. От 1997 г. Philip Hazel е разработила PCRE (Perl Compatible Regular Expressions), която се опитва точно да симулира функционалността на регулярния израз на Perl и се използва от много съвременни инструменти, включително PHP и Apache HTTP Server.

Регионприложение и използване

Днес, регулярните изрази се поддържат широко в програмните езици, програмите за текстообработка, усъвършенстваните текстови редактори и някои други програми. Поддръжката на регулярни изрази е част от стандартната библиотека на много езици за програмиране, включително Java и Python, и е вградена в синтаксиса на други, включително Perl и ECMAScript.
Реализацията на регулярните изрази често се нарича механизъм на регулярни изрази и няколко библиотеки са достъпни за повторна употреба.

Свързани публикации