如何在Lua中查找由关键字中曾用字母组成的单词?

可能是重复的问题:

如何在Lua中找到由关键字内的字母组成的单词?

我想找到由关键字内的字母组成的单词。 但是,一旦检测到它已经在单词内部使用过,字母就不应再次使用。

我把单词保存在字典中。

例如,我有关键字:“asdasdas”

我的代码在这些条件下说'hi'

  consistLetters("asdasdas","asdas")
  consistLetters("asdasdas","sad")
  consistLetters("asdasdas","sss")

然而,当我消耗掉关键字中的所有“s”时,它也会说'hi',这不是我想要的:

  consistLetters("asdasdas","ssss")

怎么停止这个? 谢谢。

编辑:我已解决我的问题并将其作为答案共享。 我希望它会有帮助。

点赞
用户1463542
用户1463542

以下是我的代码:

function consistLetters(keyword,word)
    keywordletters = {}
    wordletters = {}
    local found = false
    findLetters(keyword, keywordletters)
    findLetters(word, wordletters)

    for i = 1, #wordletters, 1 do
        for j = 1, #keywordletters, 1 do
            if (keywordletters[j] ~= "") then
                if (wordletters[i] == keywordletters[j]) then
                    keywordletters[j] = ""
                    found = true
                    break
                end
            end
        end
        if found ~= true then
            return false
        end
        found = false
    end
end
2012-06-26 21:23:22