Ser*_*pin -1 url lua lua-patterns
我想检查 url 是否有效,在 lua 中执行此操作的正确正则表达式是什么?我尝试过像这样的正则表达式
string.match('https://stackoverflow.com/', '[a-z]*:\/\/[^ >,;]*')
Run Code Online (Sandbox Code Playgroud)
但出现错误
invalid escape sequence near ''[a-z]*:\/'
Run Code Online (Sandbox Code Playgroud)
更新:
string.match('https://stackoverflow.com/', '[a-z]*://[^ >,;]*')
Run Code Online (Sandbox Code Playgroud)
是正确答案
该错误相当明显:\/是无效的转义。您不需要转义/,因为它不是 Lua 模式中的特殊字符(检查“魔术”字符列表)并且删除转义应该可以工作:string.match('https://stackoverflow.com/', '[a-z]*://[^ >,;]*')。