Вы можете использовать следующее регулярное выражение.
\bhttps:\/\/[\da-z._~-]+(?:\/[\da-z._~-]+)*(\/[\da-z._~-]+)
Если существует группа захвата совпадений, 1 будет содержать последнюю прямую sla sh, за которой следует остаток URL, при условии, что хотя бы один символ URL следует за последним форвардом sla sh.
Demo
* Механизм регулярных выражений 1014 * выполняет следующие операции.
\b # match a word break
https:\/\/ # match 'http://'
[\da-z._~-]+ # match 1+ chars in char class
(?: # begin non-cap grp
\/ # match '/'
[\da-z._~-]+ # match 1+ chars in char class
) # end non-cap grp
* # execute non-cap grp 0+ times
( # begin cap grp 1
\/ # match '/'
[\da-z._~-]+ # match 1+ chars in char class
) # end cap grp 1