2009-11-17 4 views

Répondre

10

http://www.php.net/manual/en/function.similar-text.php

similar_text - Calculer la similitude entre les deux chaînes

Description de

int similar_text (string $first , string $second [, float &$percent ]) 

Cela calcule la similarité entre deux chaînes comme décrit dans Classics Programmation: Mise en œuvre du meilleur au monde Algorithmes d'Oliver (ISBN 0-131-00413-1). Notez que cette implémentation n'utilise pas une pile comme dans le pseudo code d'Oliver, mais des appels récursifs qui peuvent ou non accélérer le processus entier. Notez également que la complexité de cet algorithme est O (N ** 3) où N est la longueur de la plus longue chaîne ...

Fait exactement cela.

1

En outre, si vous effectuez cette comparaison dans le cadre d'une extraction de données à partir d'une base de données, de nombreux moteurs de base de données ont une implémentation SOUNDS LIKE (ou SOUNDEX). Faire cela dans le serveur DB serait plus rapide que de le faire en PHP.

2
similar_text('apple', 'apple', $percentage); 
echo $percentage. // 100 

similar_text('apple', 'aple', $percentage); 
echo $percentage. // 88.88