0

Регулярний вираз для URL — розбір посилань

Налагоджуйте регулярні вирази JavaScript наживо: підсвітка збігів, групи захоплення, прапорці та прев'ю заміни.

Підтримує $1, $2 та іменовані посилання виду $<name>; $& вставляє весь збіг. Залиште порожнім, щоб сховати прев'ю.

Опрацювання... 0%

Результат

Сторінка стартує з патерном, який не лише знаходить посилання, а й розбирає їх на частини: (?<protocol>https?):\/\/(?<host>[^\s\/?#]+)(?<path>\/[^\s?#]*)?(?<query>\?[^\s#]*)?. Кожен збіг ділиться на чотири іменовані групи — protocol, host, path і query, тож видно не тільки що посилання збіглося, а й яка його частина куди потрапила.

Головну роботу виконують класи символів: [^\s\/?#]+ означає «все до наступного слеша, знака питання чи ґратки» — саме так хост відділяється від шляху, а шлях від query-рядка. Зверніть увагу: ftp://old.server.net у прикладі не збігається, бо група протоколу дозволяє лише http або https — розширте альтернативу, якщо потрібні інші схеми.

Вставте власний текст — лог, Markdown-документ, фрагмент HTML — і дивіться, як підсвітка оновлюється наживо. Поле заміни розуміє посилання на групи, тому кожне знайдене посилання можна переписати: наприклад, обгорнути як [$&] або скоротити до $<host>.