Если вы можете предположить, что оба ваших URL-адреса являются действительными, вы можете получить тег из первого URL-адреса с этим регулярным выражением:
^[a-z]+://[^/#?]+/[^#?]*?([^#?/]+)(?:[#?]|$)
Первая (и единственная) группа захвата будет содержать тег. Это регулярное выражение не будет соответствовать URL-адресам, которые не имеют тегов.
Чтобы добавить тег к другому URL, найдите регулярное выражение:
^([^#?]*?)/?(?:[#?]|$)
и заменить на:
$1/tag
Это регулярное выражение не должно заканчиваться двумя соседними косыми чертами в URL, если путь к исходному URL заканчивается косой чертой.