From 952a27d67d0d8278aef6af09f7d2a2e74ddf1250 Mon Sep 17 00:00:00 2001 From: Dragon Fire Date: Fri, 14 May 2021 16:36:14 -0400 Subject: [PATCH] Use string-similarity --- commands/analyze/percent-diff.js | 12 +++++------- package.json | 1 + 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/commands/analyze/percent-diff.js b/commands/analyze/percent-diff.js index 7dc260be..b5cfd8d6 100644 --- a/commands/analyze/percent-diff.js +++ b/commands/analyze/percent-diff.js @@ -1,14 +1,14 @@ const Command = require('../../structures/Command'); -const leven = require('leven'); +const stringSimilarity = require('string-similarity'); module.exports = class PercentDiffCommand extends Command { constructor(client) { super(client, { name: 'percent-diff', - aliases: ['name-diff', 'leven-diff', 'levenshtein-diff'], + aliases: ['name-diff'], group: 'analyze', memberName: 'percent-diff', - description: 'Determines the percentage between two strings.', + description: 'Determines the percentage of difference between two strings.', args: [ { key: 'text1', @@ -25,9 +25,7 @@ module.exports = class PercentDiffCommand extends Command { } run(msg, { text1, text2 }) { - const distance = leven(text1, text2); - const bigger = Math.max(text1.length, text2.length); - const diff = Math.round(((bigger - distance) / bigger) * 100); - return msg.reply(`${diff}%`); + const diff = stringSimilarity.compareTwoStrings(text1, text2); + return msg.reply(`${Math.round(diff * 100)}%`); } }; diff --git a/package.json b/package.json index e5826809..e27ce49b 100644 --- a/package.json +++ b/package.json @@ -79,6 +79,7 @@ "semver": "^7.3.5", "sherlockjs": "^1.4.0", "stackblur-canvas": "^2.5.0", + "string-similarity": "^4.0.4", "tesseract.js": "^2.1.4", "text-diff": "^1.0.1", "tictactoe-minimax-ai": "^1.2.1",