Модульні уроки (4/4)
Порожні рядки та обрізка
Давайте поєднаємо прив’язки + прапорець m для двох надзвичайно корисних ідіом:
зіставлення порожніх рядків і обрізання пробілів на початку/кінці
кожного рядка.
Порожні рядки
Порожній рядок – це позиція, де ^ та $ збігаються: нуль символів
між початком і кінцем рядка.
Pattern: ^$
Flag: gm
Sample: uno\n\ndue\n\n\ntreЗбіг має нульову ширину: підсвічувач показуватиме маркер між
два \n. Щоб також зіставити рядки "порожні, але з пробілами", використовуйте
^\s*$.
Обрізка лінії
Щоб видалити пробіли на початку або в кінці рядка, поєднайте прив’язку +
клас \s + квантор:
^\s+ matches whitespace at the start of a line (can then be replaced with the empty string, module 7)
\s+$ matches whitespace at the end of a lineЗа допомогою прапорців gm ви збираєте всі пробіли на полях кожного рядка.
Виявлення порожніх рядків і пробілів у кінці
Чисто порожній рядок відповідає ^$ (з прапорцем m). Однак багато, очевидно, порожніх рядків містять невидимі пробіли або табуляції. Шаблон ^\\s*$ також перехоплює ці рядки, що значно полегшує очищення даних.
Спробуйте
Знайдіть кожен порожній рядок у зразку (нуль символів між двома символами нового рядка). Використовуйте `^$` з прапорцями `gm`.
Показати підказку
Порожній рядок - це позиція, де ^ і $ збігаються. Прапор m є обов'язковим.
Рішення доступне після 3 спроб
Повторна вправа
Знайдіть пробіли в кінці кожного рядка (пробіли, що передують новому рядку). Використовуйте `\\s+$` з прапорцями `gm`.
Показати підказку
\\s+ відповідає одному або декільком пробілам (включаючи табуляцію). За допомогою gm ви прив’язуєтеся до кінця кожного рядка.
Рішення доступне після 3 спроб
Додатковий виклик
Find all lines that start with the `#` character (entire comment lines, ignoring inline comments).
Показати підказку
Use ^ at the start of the pattern to indicate that the comment character # must start the line.
Рішення доступне після 3 спроб