
Funktionsblokken SIMILAR_TEXT beregner ligheden mellem to strengværdier.
Beregningen af ligheden mellem to strengværdier udføres efter den i Programming Classics: Implementing the World's Best Algorithms by Oliver (ISBN 0-131-00413-1) beskrevne metode. Bemærk, at denne implementering ikke bruger en stack som i Olivers pseudokode, men derimod rekursive kald, der kan øge ydeevnen (men ikke nødvendigvis). Bemærk også, at kompleksiteten af denne algoritme er O(N³), hvor N er længden af den længste strengværdi.
Indgangen definerer den første strengværdi, der skal sammenlignes.
Indgangen definerer den anden strengværdi, der skal sammenlignes.
Udgangen returnerer antallet af overensstemmende tegn i begge strengværdier.
Antallet af overensstemmende tegn beregnes ved at finde den længste første fælles delstrengværdi og derefter gentage dette rekursivt for præ- og suffiks. Længderne af alle de fundne fælles delstrengværdier summeres.
Udgangen returnerer ligheden som en procentværdi som et flydende tal. Dette gøres ved at dividere resultatet med gennemsnittet af længderne på de angivne strengværdier og derefter multiplicere med 100.