Регулярное выражение для экстракта для пути URL - PullRequest
0 голосов
/ 17 октября 2019

Мне нужна помощь в создании регулярного выражения для PostgresSQL для извлечения определенных путей URL и размещения их в отдельном столбце.

Например, используя следующие URL-адреса, мне нужно извлечь

https://example.com/drinks/ 
https://example.com/drinks/beverages/
https://example.com/drinks/beverages/pepsi/pepsi-can-16-oz/
Column 1                                                   | Column 2
---------------------------------------------------------------------------------------
https://example.com/drinks                                 | /drinks/
https://example.com/drinks/beverages                       | /drinks/beverage/
https://example.com/drinks/beverages/pepsi/pepsi-can-16-oz | /drinks/beverages/pepsi/

И, наконец, регулярное выражение для получения чего-либо после /drinks/beverage/* ...

Regex не моя сильная сторона, поэтому я ищу несколько советов о том, как этого добиться.

1 Ответ

0 голосов
/ 17 октября 2019

Попробуйте это ...

(?=((?i)http(s)?:\/\/(?:[\w0-9](?:[\w0-9-]{0,61}[\w0-9])?\.)+[\w0-9][\w0-9-]{0,61}[\w0-9])).*

По сути, оно будет соответствовать домену (то есть https://example.com), а затем посмотрите вперед, чтобы найти путь для вас.

...