Aller au contenu
Accueil moxon

Comparaison de textes

L'endpoint /diff compare deux textes et retourne une liste ordonnée des changements, ligne par ligne ou mot par mot.

posthttps://api.moxon.dev/v6/diff

Comment ça marche ?

La comparaison repose sur l'algorithme de la plus longue sous-séquence commune (LCS) : il recherche le plus grand ensemble de segments partagés par les deux textes dans le même ordre, et tout ce qui en sort est signalé comme ajouté ou supprimé. En mode line, les textes sont découpés aux sauts de ligne, les lignes vides étant conservées ; en mode word, ils sont découpés sur les espaces et les segments vides sont ignorés.

Essayerpost/v6/diff

Paramètres

Le corps de la requête doit être en JSON :

  • astringrequis

    Texte original

  • bstringrequis

    Texte modifié, comparé à a

  • mode"line" | "word"optionnel

    Granularité de la comparaison : line ou word. Par défaut : line

Modes disponibles

ModeDescription
lineDécoupe les deux textes aux sauts de ligne et compare ligne par ligne
wordDécoupe les deux textes sur les espaces et compare mot par mot

Champs de réponse

  • modestring

    Granularité utilisée : line ou word

  • addednumber

    Nombre de segments présents uniquement dans b

  • removednumber

    Nombre de segments présents uniquement dans a

  • changesobject[]

    Changements ordonnés reconstruisant b à partir de a

Entrées de changes :

  • typestring

    equal, add ou del

  • valuestring

    La ligne ou le mot concerné

Exemples de code

Gestion des erreurs

Si les paramètres sont manquants ou invalides, l'API retournera une erreur :

  • 400Please provide a first text (a={text})Le paramètre a est manquant ou n'est pas une chaîne
  • 400Please provide a second text (b={text})Le paramètre b est manquant ou n'est pas une chaîne
  • 400Texts must be 10000 characters or fewera ou b dépasse la longueur maximale
  • 400Mode must be one of: line, wordLa valeur de mode n'est ni line ni word
  • 400Texts must contain 2000 lines or fewerUn texte dépasse la limite de lignes en mode line
  • 400Texts must contain 2000 words or fewerUn texte dépasse la limite de mots en mode word