xml.diff¶
Description¶
Recherche et signale les différences entre deux arbres XML.
La sortie contient des balises <ins> et <del> définies sous un namespace
spécifiques afin que ces dernières n'interfèrent pas avec les éventuelles
autres balises <ins> et <del> déjà présentes dans l'arbre XML.
Syntaxe¶
xml.diff( old , new [ , options ] )
Paramètres¶
oldstring- Arbre XML d'origine
newstring- Arbre XML modifié à comparer avec
old optionsmap-
Map d'options. Les options reconnues sont:
namespace- Flag
true/falseindiquant si l'algorithme doit tenir compte des namespaces lors de la comparaison. Par défaut le paramètre a la valeurtrue. whitespace-
Type de traitement des espaces. Le paramètre peut prendre les valeurs suivantes:
compare: Les espaces sont conservés durant le processus et sont comparés.ignore: Les espaces sont ignorés.preserve: Les espaces doivent être préservés, c'est-à-dire qu'ils seront chargés et restitués lors de la mise en forme, mais l'algorithme peut les considérer comme équivalents et ne signalera pas les différences entre les espaces blancs.
Par défaut la valeur est
compare. granularity-
Indique comment découper et comparer les arbres xml. Les valeurs possibles sont:
character: Les différences sont signalées au niveau du caractère.text: Les différences sont signalées au niveau du texte entierword: Les différences sont signalées au niveau du mot.space_word: Les différences sont signalées au niveau des mots, mais peuvent inclure l'espace qui précède.punctuation: Les différences sont signalées en comparant le texte entre les signes de ponctuation. C'est plus précis que le texte, mais moins précis que le mot.
Par défaut la valeur est
space_word.
Retour¶
Retourne une chaîne de caractères reprenant les modifications apportées au texte.
Exemple¶
Exemple d'utilisation de la méthode pour comparer des chaînes de caractères.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | |
Le code génère la valeur suivante:
Ceci est un<del> bel</del><ins> nouvel</ins> exemple de texte<del> sans
modification</del><ins> avec quelques modifications</ins>.