How to left join and count two tables where the rows (strings) are different
@ypercube said in question comments:

You don't need to split the strings. If there is always a single space between word, you can replace space with - and then join: ON 'path/' || replace(t1.title, ' ', '-') = t2.path
Or the reverse:  ON t1.title = replace(substring(t2.path, 6), '-', '')

You can use replace() function in the ON clause to compare both strings and get the desired result:


select     title, path
from       t1
inner join t2
on         'path/' || replace(t1.title, ' ', '-') = t2.path;


title             | path                  
:---------------- | :---------------------
gone wind forever | path/gone-wind-forever




select     title, path
from       t1
inner join t2
on         t1.title = replace(substring(t2.path, 6), '-', ' ');


title             | path                  
:---------------- | :---------------------
gone wind forever | path/gone-wind-forever


dbfiddle here