Problem 848. Calculate a modified Levenshtein distance between two strings

Solution 2085389

Submitted on 9 Jan 2020 by Alexander
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

Test Suite

Test Status Code Input and Output
1   Pass
s1 = 'I do not like MATLAB'; s2 = 'I love MATLAB a lot'; d_correct = 4; assert(isequal(modlevenshtein(s1,s2),d_correct))

s1 = 1×5 cell array {'do'} {'i'} {'like'} {'matlab'} {'not'} s2 = 1×5 cell array {'a'} {'i'} {'lot'} {'love'} {'matlab'} d = 4

2   Pass
s1 = 'Which words need to be edited?'; s2 = 'Can you tell which words need to be edited?'; d_correct = 3; assert(isequal(modlevenshtein(s1,s2),d_correct))

d = 3

3   Pass
s1 = 'Are these strings identical?'; s2 = 'These strings are not identical!'; d_correct = 3; assert(isequal(modlevenshtein(s1,s2),d_correct))

s1 = 1×4 cell array {'are'} {'identical'} {'strings'} {'these'} s2 = 1×5 cell array {'are'} {'identical'} {'not'} {'strings'} {'these'} d = 3

4   Pass
s1 = 'Settlers of Catan is my favorite game'; s2 = 'Tic-tac-toe is also one of my favorite games'; d_correct = 6; assert(isequal(modlevenshtein(s1,s2),d_correct))

s1 = 1×7 cell array {'catan'} {'favorite'} {'game'} {'is'} {'my'} {'of'} {'settlers'} s2 = 1×8 cell array {'also'} {'favorite'} {'games'} {'is'} {'my'} {'of'} {'one'} {'tic-tac-toe'} d = 6

5   Pass
s1 = 'This one should be simple, but maybe it isn''t'; s2 = 'This one should be simple, but maybe it isn''t'; d_correct = 0; assert(isequal(modlevenshtein(s1,s2),d_correct))

d = 0

6   Pass
s1 = 'Testing, testing, one, two, three,...'; s2 = 'Testing, testing, one, two,...'; d_correct = 1; assert(isequal(modlevenshtein(s1,s2),d_correct))

d = 1

7   Pass
s1 = 'How many edits do you think there are in this example? I don''t know!'; s2 = 'Well, it is hard to tell how many edits are required because there are big differences in the two strings.'; d_correct = 15; assert(isequal(modlevenshtein(s1,s2),d_correct))

s1 = 1×14 cell array {'are'} {'do'} {'don't'} {'edits'} {'example'} {'how'} {'i'} {'in'} {'know'} {'many'} {'there'} {'think'} {'this'} {'you'} s2 = 1×20 cell array Columns 1 through 14 {'are'} {'are'} {'because'} {'big'} {'differences'} {'edits'} {'hard'} {'how'} {'in'} {'is'} {'it'} {'many'} {'required'} {'strings'} Columns 15 through 20 {'tell'} {'the'} {'there'} {'to'} {'two'} {'well'} d = 15

Suggested Problems

More from this Author44

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!