如何验证 Lua Pattern 匹配生成器

我正在编写一个 lua 代码生成器,它很简单,用户可以给我一个模式(例如"/myUrl/%d"),然后我必须创建一个在 nginx 中运行的 lua 代码。

所以我创建了像这样的东西:

if string.match("/myUrl/12","/myUrl/%d+")
    ANOTHER CODE HERE
end

这很好用,但我想检查那个模式是否有效,所以我决定在创建代码之前运行验证,例如:

lua -e 'string.match("fake","/%")'

这样是可以的

lua -e 'string.match("/myfake","/%")'

lua: (command line):1: malformed pattern (ends with '%')
stack traceback:
    [C]: in function 'match'
    (command line):1: in main chunk
    [C]: ?

这会失败

因此我想知道是否有一种方法可以在不提供要匹配的示例字符串的情况下检查模式匹配。

点赞