I have tried multiple regexs from here and none of them work correctly. Example:
declare
v_result integer;
v_link nvarchar2(300) := 'http://example.com/blah_blah/';
v_regexp nvarchar2(300) := '@^(https?|ftp)://[^\s/$.?#].[^\s]*$@iS';
begin
begin
select 1 into v_result
from dual
where regexp_like(v_link, v_regexp);
exception when no_data_found then
dbms_output.put_line('false');
return;
end;
dbms_output.put_line('true');
end;
This returns false, although it should return true. Why?