public int compare( ConfigOption a, ConfigOption b ) {
            String[] formatArgsA = arg.split( a.getCommandLineOption().getDelimiter() );
            String[] formatArgsB = arg.split( b.getCommandLineOption().getDelimiter() );

            double distLongA = distance( a.getCommandLineOption().getLongFlag(), formatArgsA[0] );
            double distLongB = distance( b.getCommandLineOption().getLongFlag(), formatArgsB[0] );

            return distLongA < distLongB ? -1 : 1;
        }
Levenshtein Distance is defined as the amount of steps to be done, until we can form a word into another word
A step is a substitution, addition and removal of a character
jgiven-core/src/main/java/com/tngtech/jgiven/report/config/ConfigOptionParser.java