Comparer 2 chaînes de caractères et de la différence d'affichage (php ou javascript)
La comparaison doit travailler à la volée, donc cela doit être fait via le javascript ou le php (javascript, ajax demande).
Ce dont j'ai besoin est probablement avancé différence montrant, de sorte qu'il sera probablement mieux si il ya toute sorte de bonnes prises en charge de la bibliothèque.
Cette image montre exactement ce que j'ai besoin d' >
Ajouté #1:
J'ai trouvé ce http://ejohn.org/projects/javascript-diff-algorithm/ (exemple http://www.djsipe.com/js-diff/) qui est ok, mais ne prend pas en charge multiligne? et ça change le mot entier uniquement lorsqu'un caractère est différent...
Ajouté #2:
J'ai testé le script php ( https://github.com/paulgb/simplediff/ ), mais il a des défauts.
Ajouté #3:
J'ai trouvé ce que je cherchais ( http://code.google.com/p/google-diff-match-patch/ )
comme vous pouvez le voir, la question sur le lien que tu m'a donné, est de 2 ans, et la réponse, qui a été acceptée, a rompu le lien (j'ai déjà commenté sur la réponse cet après-midi).
OriginalL'auteur Glavić | 2011-01-05
Vous devez vous connecter pour publier un commentaire.
Cette réponse à une question connexe, semble prometteuse pour le javascript. google-diff-match-patch
Il fournit une API qui va prendre soin de tout le complexe et bien connu des algorithmes. Cependant, vous aurez à faire un peu de travail avec la présentation.
PHP est plus polyvalent, il ya beaucoup de diff outils.
Regardez cette autre question relative à la Texte calculer les différences en PHP.
testé et c'est exactement ce dont j'ai besoin. tnx!
Je suis allé à travers ce et a fini par créer un wrapper de la bibliothèque pour aider à la "présentation des travaux" nécessaires à l'utilisation de
diff_match_patch
: github.com/arnab/jQuery.PrettyTextDiffOriginalL'auteur mmarinero
Voir Mettre en évidence la différence entre deux chaînes de caractères en PHP
Il ya un couple de réponses dans le fil. Celui-ci semble assez prometteur: github.com/paulgb/simplediff/blob/...
déjà testé ce script ou devrions-nous l'appeler 2 fonctions. cela ne fonctionne pas comme j'ai besoin. exemple: si j'ai seulement ajouter une nouvelle ligne, il renvoie le mauvais différence...
OriginalL'auteur julesj