Як використовувати регулярні вирази (регулярні вирази) в Linux



Оновлений травень 2024: Припиніть отримувати повідомлення про помилки та сповільніть роботу системи за допомогою нашого інструмента оптимізації. Отримайте зараз на посилання
  1. Завантажити та встановити інструмент для ремонту тут.
  2. Нехай сканує ваш комп’ютер.
  3. Тоді інструмент буде ремонт комп'ютера.

Вам цікаво, що ці дивні серії символів роблять під Linux? Вони дають вам магію командного рядка! Ми навчаємо вас, як робити заклинання за допомогою регулярних виразів, і вдосконалюємо навички командного рядка.

Що таке регулярні вирази?

Регулярні вирази схожі на макетів ми обговорювали в розділі 7, і вони дозволяють нам створити модель. Однак вони більш потужні. Регулярні вирази зазвичай використовуються для ідентифікації та маніпулювання певними даними. Наприклад, ми можемо захотіти ідентифікувати кожен рядок, який містить адресу електронної пошти або URL-адресу в записі.

Регекс використовують скрізь. Ми покажемо їх тут за допомогою grep, але багато інших програм використовують їх (включаючи sed і vi, про які ви чули в попередніх розділах), і багато мов програмування також використовують їх.

За допомогою цього неймовірного інструменту ви можете це зробити:

  • Підтвердити введення тексту
  • Пошук (та заміна) тексту у файлі
  • Перейменування пакетного файлу
  • Неймовірно потужний пошук файлів
  • Взаємодія з такими серверами, як Apache
  • Тест на візерунки в рядках
  • І багато іншого


Оновлення за травень 2024 року:

Тепер за допомогою цього інструменту можна запобігти проблемам з ПК, наприклад, захистити вас від втрати файлів та шкідливого програмного забезпечення. Крім того, це чудовий спосіб оптимізувати комп’ютер для максимальної продуктивності. Програма з легкістю виправляє поширені помилки, які можуть виникати в системах Windows - не потрібно кількох годин усунення несправностей, коли у вас під рукою ідеальне рішення:

скачати



Версії Regex

Існує три версії синтаксису регулярного виразу:

  • BRE: Основні регулярні вирази
  • ERE: розширені регулярні вирази
  • PRCE: Регулярні вирази Perl

Залежно від інструменту чи програми, може бути використана одна чи більше з цих версій.

Що робить регулярні вирази

Існує два типи символів, які відображаються у регулярних виразах:

  • Літеральні символи
  • Мета-персонаж

Буквальні символи - це стандартні символи, що складають ваші струни. Кожен символ у цьому наборі є буквальним символом. Ви можете використовувати регулярний вираз для пошуку кожного буквального символу в цьому рядку.

Метахарактери - це зовсім інша тварина; саме вони дають регулярні вирази своєї сили. За допомогою метахаракторів ви можете зробити набагато більше, ніж просто шукати одного символу. За допомогою метахарактерів ви можете шукати комбінації рядків та багато іншого. Список метахарактерів для регулярних виразів виглядає наступним чином

Вказує, що наступний символ є або спеціальним символом, буквальним посиланням, зворотним посиланням, або восьмеричним символом втечі.

^ Відображає початок вхідного рядка

$ Позначає кінець рядка введення.

+ Вказує, що попередній субдекспресія повинна бути відрегульована нулем або більше разів.

* Вказує, що попередній підвираз повинен відповідати один або кілька разів

? Вказує, що попередній підвираз повинен бути відрегульований на нуль або один раз.

{n} відповідає точно n разів (де n - негативне ціле число)

{n,} Збігається принаймні n разів (де n - негативне ціле число)

{n, m} відповідають принаймні n і не більше m разів (де m і n - цілі невід'ємні числа, а n <= m)

. Підходить для всіх символів, крім "n".

xyz] Відповідає одному із доданих символів.

x | y Відповідає x або y

[^ xyz] Відповідає будь-якому символу, не включеному

az] Відповідає будь-якому символу у вказаному діапазоні.

^ az] Відповідає будь-якому символу, який не знаходиться у вказаному діапазоні.

b Відповідає межі слова (положення між словом та пробілом).

B Відповідає невербальній межі (приклад: "uxB" відповідає "ux" у "смокінгу", але не "ux" у "Linux")

d Відповідає числу

D Відповідає нечисловому символу

f Відповідає символу потоку форми

n Відповідає символу передачі рядків.

r Відповідає символу повернення каретки.

s Відповідає будь-якому простору (включаючи пробіли, вкладки, канали форми тощо).

S Відповідає будь-якому непросторовому символу

t Відповідає символу вкладки

v Відповідає символу вертикальної вкладки.

w Відповідає будь-якому слову, включаючи підкреслення

W Відповідає кожному невербальному персонажу

a Відповідає n, де n - символ Unicode, виражений чотирма шістнадцятковими цифрами (наприклад, u0026 для символу Ampersand)

https://linuxconfig.org/understanding-regular-expressions



Порада експерта: Цей інструмент відновлення сканує репозиторії та замінює пошкоджені чи відсутні файли, якщо жоден із цих методів не спрацював. Він добре працює в більшості випадків, коли проблема пов’язана з пошкодженням системи. Цей інструмент також оптимізує вашу систему для максимальної продуктивності. Його можна завантажити за Натиснувши тут