This might help you start , this might not work in all cases for matching. Give it a try. data a; input title1 & $100.; datalines; AM J CLIN ONCOL CANC ADV DRUG DELIVER REV ADV ECOL RES ABDOM RADIOL ADV ELECTRON MATER ENDOCR RELAT CANCER MAYO CLIN PROC MBIO MCN AM J MATERN CHIL ; run; data b; input title2 & $100.; datalines; Abdom Radiol (NY) ACS Appl Mater Interfaces Adv Drug Deliv Rev AJR Am J Roentgenol Am J Clin Oncol Endocr Relat Cancer ; run; PROC SQL; Create table dummy as select title1, title2, catx(' ',title1,' : ',title2) as Exact_match from ( select a.*, substr(compress(lowcase(title1),' '),1,min_len) as temp_title1, substr(compress(lowcase(title2),' '),1,min_len) as temp_title2, spedis(calculated temp_title1, calculated temp_title2) as dis from ( Select *, length(compress(title1,' ')) as len1, length(compress(title2,' ')) as len2, case when calculated len1 < calculated len2 then calculated len1 when calculated len2 < calculated len1 then calculated len2 else calculated len1 end as min_len from A1 as x cross join B1 as y ) a where calculated temp_title1 = calculated temp_title2 or calculated dis<=15 ) ; Quit;
... View more