Lua如何从字符串中删除撇号

时间:2018-08-23 14:20:22

标签: lua

因此,如果Lua gsub本身或其中有一个撇号,则我会从字符串中删除撇号时遇到问题,我似乎无法用它来删除其中的任何一个。

local uri_without_args = "'" --one on its own
local uri_without_args = "''''''''lol''''" --in text
local uri_without_args = "''''''''''''" --loads
--etc--etc all occurrences must go

local list = {
"%'", --apostrophe
}
for k,v in ipairs(list) do
    local uri_without_args_remove_duplicates, occurrences = uri_without_args:gsub(""..v.."","")
    if occurrences > 0 then
    occurrences = occurrences + 1
        for i=1, occurrences do
            if uri_without_args_remove_duplicates=="" then
                --do nothing
            else
                uri_without_args = uri_without_args:gsub(""..v.."","")
            end
        end
    end
end


print(uri_without_args)

1 个答案:

答案 0 :(得分:2)

只有uri_without_args不为空时,才为uri_without_args_remove_duplicates分配新值。如果您从分配给if的地方删除uri_without_args语句,或者如果uri_without_args"''''''''lol''''"开头,那么它将正常工作。

正如Egor在评论中所说,您也可以简单地使用uri_without_args_remove_duplicates作为结果值。