3

我有一个词,我想检查它是否等于另一个词。如果是这样,那么一切都是正确的,但如果有一个(并且只有一个)错误的字符,它也可能是正确的。

local word = "table"
local word2 = "toble"
if word == word2 then
  print("Ok")
end

我该如何拆分word2

4

1 回答 1

4

您可以先比较字符串的长度,如果它们相等,然后从第一个字符开始比较,如果有一个字符不同,那么其余字符必须相同才能使您的条件为真:

function my_compare(w1, w2)
    if w1:len() ~= w2:len() then
        return false
    end
    for i = 1, w1:len() do
        if w1:sub(i, i) ~= w2:sub(i, i) then
            return w1:sub(i + 1) == w2:sub(i + 1)
        end
    end
    return true
end
于 2014-01-12T14:37:45.890 回答