使用 LUA 模式从字符串中检索特定部分的文本。

所以我在 Lua 中有一个字符串,就像下面这样:

[[
  en[What is your job]
  pt[Qual é o seu trabalho?]
]]

正如你所期望的那样,我有时想获取“en[]”内的任何内容,有时又想获取“pt[]”内的内容,并将文本放入新变量中。

有什么想法吗?

点赞
用户2238176
用户2238176

编辑:通过删除一些串联来提高速度。

这应该可以工作:

    String = [[
        en[你的工作是什么]
        pt[Qual é o seu trabalho?]
    ]]

    function RetrieveElementFromString( String, Element, ContainerOpen, ContainerClose ) -- String 是 "[[]]" 的一部分。
        return String:match( Element .. ContainerOpen .. '(.-)' .. ContainerClose )
    end

    print( RetrieveElementFromString( String, 'en', '%[', '%]' ) ) -- > 你的工作是什么
2014-06-02 01:38:11