RegexBuddy dává toto varování o prvním '?'
a pokud jej odstraníte, zdá se, že funguje, tj. ^(.+[^\/:])(?=[?\/]|$)
pokud se však pokoušíte analyzovat baseurl, regex nebude fungovat. Místo toho použijte toto:
select regexp_replace('....', '^(.*:)//([a-z\-.]+)(:[0-9]+)?(.*)$', '\2')