
De functieblok SIMILAR_TEXT berekent de gelijkheid van twee tekenreeksen.
Het berekenen van de gelijkheid van twee tekenreeksen gebeurt volgens de in Programming Classics: Implementing the World's Best Algorithms by Oliver (ISBN 0-131-00413-1) beschreven methode. Let op dat deze implementatie geen stack gebruikt zoals in Olivers pseudocode, maar wel recursieve oproepen die de prestaties kunnen verhogen (maar niet hoeven). Let ook op dat de complexiteit van dit algoritme O(N³) bedraagt, waarbij N de lengte van de langste tekenreeks is.
De ingang definieert de eerste tekenreeks die moet worden vergeleken.
De ingang definieert de tweede tekenreeks die moet worden vergeleken.
De uitgang geeft het aantal overeenkomende tekens in beide tekenreeksen terug.
Het aantal overeenkomende tekens wordt berekend door de langste eerste gedeelde deeltekenreeks te zoeken en dit vervolgens recursief voor de prefixen en suffixen te herhalen. De lengtes van alle gevonden gedeelde deeltekenreeksen worden opgeteld.
De uitgang geeft de gelijkheid als percentage terug als een drijvende kommagetal. Hiertoe wordt het resultaat gedeeld door het gemiddelde van de lengtes van de opgegeven tekenreeksen en vermenigvuldigd met 100.