Étant donné deux ou plusieurs échantillons de texte, plus précisément des segments de code, quelle est la manière la plus efficace de détecter où les échantillons diffèrent et de former un motif correspondant à chaque échantillon?Détection de motifs dans les segments de code
Par exemple, étant donné les exemples suivants de code:
cd ~/workspaces/project/tmp1/bin
rsync --recursive --progress /data/local/documents* data
cd ~/workspaces/project/we32usZ/bin
rsync --recursive --progress /data/local/lib* data
cd ~/workspaces/project/oiususs/bin
rsync --recursive --progress /data/local/usr* data
Comment pourrais-je en déduire ce modèle (où varN $ indique une variable générique)?
cd ~/workspaces/project/$var1/bin
rsync --recursive --progress /data/local/$var2* data
Mon approche initiale est de comparer deux échantillons, la comparaison de chaque lettre ième jusqu'à ce qu'une différence se trouve, à la recherche pour la suite où la partie « variable » du texte se termine, puis répéter pour d'autres échantillons. Cependant, cela semble très inefficace, et suppose évidemment que les textes sont très similaires pour commencer. Y a-t-il un meilleur moyen?