Онлайн робочі станції OnWorks Linux та Windows

логотип

Безкоштовний онлайн-хостинг для робочих станцій

<Попередній | зміст | Наступна>

POSIX Basic проти Розширені регулярні вирази

Саме тоді, коли ми подумали, що це не може бути більше заплутаним, ми виявили, що POSIX також розділяє реалізації регулярних виразів на два види: основні регулярні вирази (BRE) та розширені регулярні вирази (ERE). Функції, які ми розглянули досі, підтримуються будь-яким додатком, який сумісний із POSIX і реалізує BRE. Наші GREP Програма є однією з таких програм.

Яка різниця між BRE та ERE? Справа в метасимволах. За допомогою BRE розпізнаються такі метасимволи:

^ $ . [ ] *

Усі інші символи вважаються буквальними. У ERE додаються такі метасимволи (і пов’язані з ними функції):

( ) { } ? + |

Однак (і це найцікавіше) символи «(», «)», «{» і «}» розглядаються як метасимволи в BRE if вони екрануються за допомогою зворотної косої риски, тоді як у ERE, якщо перед будь-яким метасимволом стоїть зворотна коса риса, він розглядається як литерал. Будь-які дивацтва, які трапляються, будуть висвітлені в наступних обговореннях.

зображення

Оскільки функції, які ми збираємося обговорити далі, є частиною ERE, нам потрібно буде використовувати інші GREP. Традиційно це було виконано с егреп програми, але версія GNU GREP також підтримує розширені регулярні вирази, коли -E використовується опція.


POSIX

Протягом 1980-х років Unix стала дуже популярною комерційною операційною системою, але до 1988 року світ Unix був у сум’ятті. Багато виробників комп'ютерів ліцензували вихідний код Unix у його творців, AT&T, і постачали різні версії операційної системи разом зі своїми системами. Однак, намагаючись створити диференціацію продуктів, кожен виробник додав власні зміни та розширення. Це почало обмежувати сумісність програмного забезпечення. Як завжди з

зображення

POSIX Basic проти Розширені регулярні вирази


власних постачальників, кожен намагався зіграти зі своїми клієнтами у виграшну гру «блокування». Цей темний час в історії Unix відомий сьогодні як «балканізації».

Введіть IEEE (Інститут інженерів з електротехніки та електроніки). У середині 1980-х років IEEE почав розробляти набір стандартів, які визначали б, як працюватимуть системи Unix (і Unix-подібні). Ці стандарти, офіційно відомі як IEEE 1003, визначають інтерфейси програмування прикладних програм (API), оболонки та утиліти, які можна знайти у стандартній системі, подібній Unix. Назва «POSIX», що означає Портативний інтерфейс операційної системи (з додаванням «X» в кінці для додаткової яскравості), запропонував Річард Столман (так, Що Річард Столман), і був прийнятий IEEE.


Найпопулярніші хмарні обчислення ОС на OnWorks: